登录
注册
关于我们
简体中文
ENGLISH
搜索
购物车
0 ITEMS ON YOUR CART
首页
动态
方案
案例
专栏
期刊
联系我们
首页
期刊
Ext JS的Object类型处理及便捷方法
Ext JS开发大全
第1章 Ext JS快速入门示例[4/4]
第12章[12.10]富文本编辑器 CKEditor与Ext JS的整合
第12章[12.10.1] Ext JS + CKEditor+Spring Boot 实现编辑器图片上传
第11章[11.6] Ext JS 自行搭建远端库的包升级版本后找不到的问题解决
[Ext JS 4] 实战之Grid, Tree Gird编辑
ext命令集
第12章[12.3] Ext JSGrid中的超链接列及其功能实现
[Ext JS]textfield添加compositionstart、compositionupdate 和compositionend _os
[Ext JS ] 动添切换字段的必填与非必填
3.1 Ext JS 组件总览
[Ext JS] Grid表格批量编辑的实现
Ext JS 快速开发工具
带触发器按钮的输入框
Ext JS的布尔对象类型处理及便捷方法
Ext JS的Object类型处理及便捷方法
ExtJS RadioGroup(单选按钮组) 使用及注意事项
Ext JS 模拟后端数据实现
ToolTip 实现全介绍
Ext JS下拉单选框(Combobox,TagFied)使用及疑难问题解决
Ext JS应用测试概览
Sencha Studio 监视工具( Inspect Tool)
Ext JS 4 升级指南
Ext JS 如何定义公用方法(单例类 or 静态方法)
Ext JS的模块化开发(Package)
Ext3 -- Form 实例。 用来migrate file 数据到DB用的
ExtJS 3 在Tab下加入Form 实例
Extjs Grid 中给已经添加过Filter的列增加标识
Extjs 实战之 Ext.tree.TreePanel Tree无法显示
Extjs弹出框的异步执行
Grid 动态该表列( reconfigure)的性能改善
Spring Boot Ext JS准前后端框架应用的会话(Session)处理
[Ext JS 4] Extjs 图表 Legend(图例)的分行与分列显示
[Ext JS 4] Extjs 之 initComponent 和 constructor的区别
[Ext JS 4] Grid 中的单元格添加Tooltip 的效果
[Ext JS 4] Grid 实战之分页功能
[Ext JS 4] Grid 组件
[Ext JS 4] MVC 应用程序框架
[Ext JS 4] MVC 应用程序框架
发布 [Ext JS 4] contentEL,renderTo, applyTo 释义与区别
[Ext JS 4] 动态加载
[Ext JS 4] 实战之 ComboBox 和 DateField (消失之解决办法)
[Ext JS 4] 实战之 Picker 和 Picker Field
[Ext JS 4] 实战之 带week(星期)的日期选择控件(二)
[Ext JS 4] 实战之 ComboBox 和 DateField 的点击事件在IE下失效
## [Ext JS 4] 实战之 带week(星期)的日期选择控件(三)
[Ext JS 4] 实战之 带week(星期)的日期选择控件
[Ext JS 4] 实战之Chart 坐标控制(单坐标,双坐标)
[Ext JS 4] 实战之Chart, Column Chart 定制颜色
[Ext JS 4] 实战之Grid, Tree Gird 动态添加列
[Ext JS 4] 实战之Grid, Tree Gird 动态添加列续(性能考虑)
[Ext JS 4] 实战之Grid, Tree Gird 动态添加行
[Ext JS 4] 实战之Grid, Tree Gird 添加按钮列
[Ext JS 4] 实战之Grid, Tree Gird编辑Cell
[Ext JS 4] 实战之Load Mask - 在Grid Reconfigure的使用状况
[Ext JS 4] 实战之Load Mask(加载遮罩)的显示与隐藏
[Ext JS 4] 实战之多选下拉单 (带checkbox) 续 - 带ALL 选项
[Ext JS 4] 实战之多选下拉单 (带checkbox)
[Ext JS 4] 实战之升级系列一[Ext jS 3-->Ext JS 4]
[Ext JS 4] 实战之将chart导出为png, jpg 格式的文件
[Ext JS 4] 实战之浏览器兼容
[Ext JS 4] 布局之实战二 - 中间区块不会自动伸展 (tab)续
[Ext JS 4] 组件之图表
[Ext JS 4]后台自动产生图档
[Ext JS 4]性能优化
[Ext JS 7 ]7.5 自适应配置 - Responsive Configs
[Ext JS 7] 关联(Association)
[Ext JS 7]事件(Event)
[Ext JS 7]ClassRequire错误解决
[Ext JS 7]的开发模式
[Ext JS 7]基于NPM的开发
[Ext JS ] 动添切换字段的必填与非必填
[Ext JS4] 数据包
[Ext JS4系列]Ext JS4 入门
[Ext JS6] Grid不同列的关联编辑
[Ext JS6] ViewControllers-视图控制器
[Ext JS6]Ext.Template
[Ext JS6]Sencha Cmd
[Ext JS6]编码规范
[Ext JS6]多类型设备开发
[Ext JS6]工作区-Workspace
[Ext JS6]路由(Routing)及使用
[Ext JS6]视图模型和数据绑定
[Ext JS6实战] Ajax获取Tree Store
[Ext JS6实战] Ext.XTemplate
[Ext JS6实战]动态数据绑定
[Ext JS] Sencha Cmd命令参考之二
[Ext JS] Sencha Cmd命令参考之一
[Ext JS] Group Grid-分组网格
[Ext JS] Group Grid-分组网格
[Ext JS]嵌套Grid的实现及注意事项
[Ext JS]SimXhr.js__dc=1659315492151_65 Uncaught TypeError问题分析与解决
[Ext JS]Sencha Studio安装与快速介绍之一
[Ext JS]textfield 添加 compositionstart、compositionupdate 和 compositionend
[Ext JS]图片显示方式
[ExtJS 6]Grid分页工具栏无效问题解决
[ExtJS6]ResponsiveColumn-自适应列布局
[Extjs 4] 类系统
基于Ext JS的模块化应用框架搭建及开发
[Ext JS] 自行搭建远端库的包升级版本后找不到的问题解决-The following versions are available
[Ext JS]鼠标移入移除时弹出和关闭窗口
[Ext JS]富文本编辑器 CKEditor与Ext JS的整合
[Ext JS]可编辑列Grid的全场景开发
['Ext JS]Grid中的超链接列及其功能实现
[Ext JS]Ext JS + CKEditor+Spring Boot 实现编辑器图片上传
[Ext JS]介绍与快速入门1
[Ext JS]实现带动态数字的图标
Spring Boot+Ext JS 实现图形验证码
Ext JS介绍与快速入门2
Ext JS开发基本环境准备与项目创建
[Ext JS]开发模式及快速测试方式
[Ext JS]多类型终端-电脑、移动端(手机、平板)
[Ext JS]基于Ext JS的MVC/MVVM架构的应用开发模式
[Ext JS]Ext JS的类与类体系
[Ext JS]Ext JS组件、容器与布局
[Ext JS]组件与容器的选择与开发
[Ext JS]Ext JS数据模型与数据封装
[Ext JS]Ext JS的控制器类型及使用
[Ext JS]说透Ext JS的窗口及对话框用法
[Ext JS]说透Ext JS的窗口及对话框用法
[Ext js]Grid行选择的多种场景和实现方式
[Ext JS]Ext JS类的继承与混合
CmsWing
Ext JS的Object类型处理及便捷方法
## Ext JS的Object类型处理及便捷方法 ### JavaScript 的Object 对象类型 Object 构造函数为给定值创建一个对象包装器。 如果值为 null 或未定义,它将创建并返回一个空对象,否则,它将返回一个与给定值对应的类型的对象。 构造类似: ```javascript var o = new Object(undefined);var o = new Object(null); ``` create ( proto, [propertiesObject] ) : Object STATIC 使用指定的原型和属性创建一个新对象。 举例来看: 有一个图形的类Shape, 有两个属性 x,y 分别表示横纵坐标: ```javascript function Shape() { this.x = 0; this.y = 0;} ``` 给Shape 添加一个原型方法- move(), 用来移动该图形: ```javascript Shape.prototype.move = function(x, y) { this.x += x; this.y += y; console.info("Shape moved.");}; ``` 定义一个长方形函数, 调用Shape。 ```javascript function Rectangle() { Shape.call(this); } ``` 到这,准备工作结束,接下来调用 Object.create() 。 Rectangle.prototype = Object.create(Shape.prototype); 至此,类定义完成了。接下来初始化这种类型的实例: ```javascript var rect = new Rectangle();rect instanceof Rectangle //true. ``` defineProperties ( obj, props ) STATIC 直接在对象上定义新属性或修改现有属性,返回该对象。 defineProperty ( obj, prop, descriptor ) STATIC 直接在对象上定义新属性,或修改对象上的现有属性,并返回该对象。 freeze ( obj ) STATIC 冻结对象:即阻止向其添加新属性; 防止现有属性被删除; 并防止更改现有属性或其可枚举性、可配置性或可写性。 本质上,对象实际上是不可变的。 该方法返回被冻结的对象。 getOwnPropertyDescriptor ( obj, prop ) : Mixed STATIC 返回给定对象的自有属性的属性描述符(即直接存在于对象上的属性描述符,而不是由于沿着对象的原型链而存在)。 getOwnPropertyNames ( obj ) : String[] STATIC 返回直接在给定对象上找到的所有属性(可枚举或不可枚举)的数组。 getPrototypeOf ( object ) : Object STATIC 返回指定对象的原型(即内部 [[Prototype]])。 hasOwnProperty ( prop ) : Boolean 返回一个布尔值,指示对象是否包含指定属性作为该对象的直接属性并且不是通过原型链继承的。 isExtensible ( obj ) : Boolean STATIC 确定对象是否可扩展(是否可以添加新属性)。 isFrozen ( obj ) : Boolean STATIC 确定对象是否被冻结。 isPrototypeOf ( prototype, object ) : Boolean 返回一个布尔值,指示指定的对象是否在调用此方法的对象的原型链中。 isSealed ( obj ) : Boolean STATIC 确定对象是否被密封。 keys ( obj ) : String[] STATIC , 返回给定对象自己的可枚举属性的数组,其顺序与 for-in 循环提供的顺序相同(不同之处在于 for-in 循环也枚举原型链中的属性)。 preventExtensions ( obj ) STATIC 防止新属性被添加到对象中(即防止将来扩展对象)。 propertyIsEnumerable ( prop ) : Boolean , 返回一个布尔值,指示是否设置了内部 ECMAScript DontEnum 属性。 seal ( obj ) STATIC, 密封对象,防止向其添加新属性并将所有现有属性标记为不可配置。 当前属性的值仍然可以更改,只要它们是可写的。 toLocaleString String 返回表示对象的字符串。 此方法旨在被派生对象覆盖以用于特定于语言环境的目的。 valueOf Object 返回指定对象的原始值。 ### Ext.Object 静态方法 Ext JS 提供了 Ext.Object 处理对象, 主要的静态方法有: chain ( object ) 返回一个以给定对象作为原型链的新对象。 此方法旨在模仿 ECMA 标准 Object.create 方法,并在可用时分配给该函数。 clear ( object ) : Object 此方法从给定对象中删除所有键。 each ( object, fn, [scope] ) 遍历一个对象并为每次迭代调用给定的回调函数。 可以通过在回调函数中返回 false 来停止迭代。 例如: ```javascript Ext.Object.each(person, function(key, value, myself) { console.log(key + ":" + value); if (key === 'oscar') { return false; // 退出迭代 }}); ``` eachValue ( object, fn, [scope] ) 遍历一个对象并为每次迭代调用给定的回调函数。 可以通过在回调函数中返回 false 来停止迭代 ```javascript Ext.Object.eachValue(items, function (value) { console.log("Value: " + value); }); ``` equals ( object1, object2 ) : Boolean 浅层使用严格相等比较 2 个对象的内容。 如果对象都具有相同的一组属性并且这些属性的值等于相应对象中的另一个,则认为对象相等。 freeze ( obj, [deep] ) : Object 冻结给定的对象,使其不可变。 默认情况下,此操作是浅的,不会影响给定对象引用的对象。 fromQueryString ( queryString, [recursive] ) : Object 将查询字符串转换回对象。比如 Ext.Object.fromQueryString("foo=1&bar=2"); // returns {foo: '1', bar: '2'} getAllKeys ( object ) : String[] 将给定对象的所有键作为数组返回。 getKey ( object, value ) 返回与给定值对应的第一个匹配键。 如果没有找到匹配的值,则返回 null。 getKeys ( object ) : String[] 以数组形式返回给定对象的 hasOwnProperty 键。 getSize ( object ) : Number 获取此对象自身属性的总数 getValues ( object ) : Array 获取给定对象的所有值作为数组。 isEmpty ( object ) : Boolean 检查此对象是否有任何属性。 merge ( destination, object ) : Object 递归地合并任意数量的对象,而不引用它们或其子对象。 toQueryObjects ( name, value, [recursive] ) : Object[] 将名称 - 值对转换为支持嵌套结构的对象数组。 用于构造查询字符串。 ```javascript var objects = Ext.Object.toQueryObjects( 'general', ['bei liu', 'fei zhang', 'yu guan']); 转换后的值是:[ { name: 'general'', value: 'bei liu' }, { name: 'general'', value: 'fei zhang' }, { name: 'general'', value: 'yu guan' }, ]; ``` toQueryString ( object, [recursive] ) : String 获取一个对象并将其转换为编码的查询字符串。 Ext.Object.toQueryString({foo: 1, bar: 2}); // returns "foo=1&bar=2"
网站导航
首页
动态
方案
案例
专栏
期刊
联系我们