关于ExtJS对javascript中的Object的扩展。能够參考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893

以下对当中的方法进行介绍:

(1)chain,把当前传入的对象当成新创建对象的原型。

chainObject object )

使用给定对象作为原生链返回一个新对象。

Parameters

  • object : Object

    创建新对象的原生链。

实例:

var obj={
name:'张三',
age:20
}
var result=Ext.Object.chain(obj);
alert(result.name);//会返回张三
alert(result.age);//会返回20
alert(result.hasOwnProperty('name'));//会返回false

(2)each

eachObject object, Function fn,
[Object scope] )

迭代一个对象,在每一个迭代上调用给定的回调函数 在回调函数中返回 false 能够停止迭代. 演示样例:

var person = {
name: 'Jacky'
hairColor: 'black'
loves: ['food', 'sleeping', 'wife']
}; Ext.Object.each(person, function(key, value, myself) {
console.log(key + ":" + value);//在浏览器控制台中打印person中的属性和值 if (key === 'hairColor') {
return false; // 停止迭代
}
});

Parameters

  • object : Object

    要迭代的对象

  • fn : Function

    回调函数

    Parameters

  • scope : Object (optional)

    回调函数运行的 (this) 作用域

(3)fromQueryString

fromQueryStringString queryString,
[Boolean recursive] ) : Object

将查询字符串转换回对象。

不递归:

Ext.Object.fromQueryString("foo=1&bar=2"); // 返回 {foo: 1, bar: 2}
Ext.Object.fromQueryString("foo=&bar=2"); // 返回 {foo: null, bar: 2}
Ext.Object.fromQueryString("some%20price=%24300"); // 返回 {'some price': '$300'}
Ext.Object.fromQueryString("colors=red&colors=green&colors=blue"); // 返回 {colors: ['red', 'green', 'blue']}

递归:

Ext.Object.fromQueryString(
"username=Jacky&"+
"dateOfBirth[day]=1&dateOfBirth[month]=2&dateOfBirth[year]=1911&"+
"hobbies[0]=coding&hobbies[1]=eating&hobbies[2]=sleeping&"+
"hobbies[3][0]=nested&hobbies[3][1]=stuff", true); // 返回
{
username: 'Jacky',
dateOfBirth: {
day: '1',
month: '2',
year: '1911'
},
hobbies: ['coding', 'eating', 'sleeping', ['nested', 'stuff']]
}

Parameters

  • queryString : String

    要解码的查询字符串

  • recursive : Boolean (optional)

    是否递归的解码字符串,这样的格式在 PHP / Ruby on Railsserver中被类似地支持.

    Defaults to: false

Returns

(4)getKey

getKeyObject object, Object value )

依据指定的值。返回第一个匹配的key. 假设没有匹配的值,将返回null.

var person = {
name: 'Jacky',
loves: 'food'
}; alert(Ext.Object.getKey(person, 'food')); // 弹出警告 'loves'

Parameters

(5)getKeys

getKeysObject object )
String[]

获取全部对象的key组成的数组

var values = Ext.Object.getKeys({
name: 'Jacky',
loves: 'food'
}); // ['name', 'loves']

Parameters

Returns

  • String[]

    对象的key组成的数组

(6)getSize

getSizeObject object )
Number

获取此对象的全部自有属性的数目

var size = Ext.Object.getSize({
name: 'Jacky',
loves: 'food'
}); // size 等于 2

Parameters

Returns

(7)getValues

getValuesObject object )
Array

获取给定对象全部的值组成的数组。

var values = Ext.Object.getValues({
name: 'Jacky',
loves: 'food'
}); // ['Jacky', 'food']

Parameters

Returns

  • Array

    对象的值组成的数组

(8)merge

mergeObject destination, Object...
object ) : Object

递归的合并随意数目的对象。可是不引用他们或他们的子对象。

var extjs = {
companyName: 'Ext JS',
products: ['Ext JS', 'Ext GWT', 'Ext Designer'],
isSuperCool: true,
office: {
size: 2000,
location: 'Palo Alto',
isFun: true
}
}; var newStuff = {
companyName: 'Sencha Inc.',
products: ['Ext JS', 'Ext GWT', 'Ext Designer', 'Sencha Touch', 'Sencha Animator'],
office: {
size: 40000,
location: 'Redwood City'
}
}; var sencha = Ext.Object.merge(extjs, newStuff); // 此时extjs和sencha等于
{
companyName: 'Sencha Inc.',
products: ['Ext JS', 'Ext GWT', 'Ext Designer', 'Sencha Touch', 'Sencha Animator'],
isSuperCool: true,
office: {
size: 40000,
location: 'Redwood City',
isFun: true
}
}

Parameters

  • destination : Object

    全部的对象子序列将被合并到此目标对象

  • object : Object...

    将要被合并的随意数目对象

Returns

  • Object

    合并全部给定的对象到目标对象

(9)toQueryObjects

toQueryObjectsString name, Object/Array value,
[Boolean recursive] ) : Array

将一个name - value对转换为一个对象数组,支持内部结构的转换。对构造查询字符串很实用。

演示样例:

var objects = Ext.Object.toQueryObjects('hobbies', ['reading', 'cooking', 'swimming']);

// objects此时等于:
[
{ name: 'hobbies', value: 'reading' },
{ name: 'hobbies', value: 'cooking' },
{ name: 'hobbies', value: 'swimming' },
]; var objects = Ext.Object.toQueryObjects('dateOfBirth', {
day: 3,
month: 8,
year: 1987,
extra: {
hour: 4
minute: 30
}
}, true); // 递归 // objects此时等于:
[
{ name: 'dateOfBirth[day]', value: 3 },
{ name: 'dateOfBirth[month]', value: 8 },
{ name: 'dateOfBirth[year]', value: 1987 },
{ name: 'dateOfBirth[extra][hour]', value: 4 },
{ name: 'dateOfBirth[extra][minute]', value: 30 },
];

Parameters

  • name : String

  • value : Object/Array
  • recursive : Boolean (optional)

    为true则递归遍历对象

    Defaults to: false

Returns

(10)toQueryString

toQueryStringObject object,
[Boolean recursive] ) : String

将一个对象转换成编码的查询字符串

不递归:

Ext.Object.toQueryString({foo: 1, bar: 2}); // 返回 "foo=1&bar=2"
Ext.Object.toQueryString({foo: null, bar: 2}); // 返回 "foo=&bar=2"
Ext.Object.toQueryString({'some price': '$300'}); // 返回 "some%20price=%24300"
Ext.Object.toQueryString({date: new Date(2011, 0, 1)}); // 返回 "date=%222011-01-01T00%3A00%3A00%22"
Ext.Object.toQueryString({colors: ['red', 'green', 'blue']}); // 返回 "colors=red&colors=green&colors=blue"

递归:

Ext.Object.toQueryString({
username: 'Jacky',
dateOfBirth: {
day: 1,
month: 2,
year: 1911
},
hobbies: ['coding', 'eating', 'sleeping', ['nested', 'stuff']]
}, true); // 返回例如以下字符串(换行和url-decoded是为了便于阅读的目的):
// username=Jacky
// &dateOfBirth[day]=1&dateOfBirth[month]=2&dateOfBirth[year]=1911
// &hobbies[0]=coding&hobbies[1]=eating&hobbies[2]=sleeping&hobbies[3][0]=nested&hobbies[3][1]=stuff

Parameters

  • object : Object

    要编码的对象

  • recursive : Boolean (optional)

    是否递归的翻译对象。这样的格式在 PHP / Ruby on Railsserver中被类似地支持.

    Defaults to: false

Returns


Ext.Object

view sourc

ExtJS学习-----------Ext.Object,ExtJS对javascript中的Object的扩展的更多相关文章

  1. ExtJS学习-----------Ext.Array,ExtJS对javascript中的Array的扩展

    关于ExtJS对javascript中的Array的扩展.能够參考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893 因为 ...

  2. ExtJS学习-----------Ext.String,ExtJS对javascript中的String的扩展

    关于ExtJS对javascript中的String的扩展,能够參考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893 以 ...

  3. ExtJS学习-----------Ext.Number,ExtJS对javascript中的Number的扩展

    关于ExtJS对javascript中的Number的扩展,能够參考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893 以 ...

  4. 关于ExtJS对javascript中的Object的扩展

    关于ExtJS对javascript中的Object的扩展,可以参考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893 下 ...

  5. 前端学习 第六弹: javascript中的函数与闭包

    前端学习 第六弹:  javascript中的函数与闭包 当function里嵌套function时,内部的function可以访问外部function里的变量 function foo(x) {   ...

  6. Javascript中Function,Object,Prototypes,__proto__等概念详解

    http://anykoro.sinaapp.com/2012/01/31/javascript%E4%B8%ADfunctionobjectprototypes__proto__%E7%AD%89% ...

  7. 详解JavaScript中的Object对象

    Object是在javascript中一个被我们经常使用的类型,而且JS中的所有对象都是继承自Object对象的.虽说我们平时只是简单地使用了Object对象来存储数据,并没有使用到太多其他功能,但是 ...

  8. Javascript中的Object对象

    Object是在javascript中一个被我们经常使用的类型,而且JS中的所有对象都是继承自Object对象的.虽说我们平时只是简单地使用了Object对象来存储数据,并没有使用到太多其他功能,但是 ...

  9. JavaScript 中的Object的使用详解笔记(一)

    昨天的学习笔记,今天更新上.第三遍看oop,还是理解的比较到位了.   1.JavaScript的组成:ECMAScript(最新6) + DOM + BOM 2.数组与对象的应用: object的基 ...

随机推荐

  1. 安卓获取数据demo出现的问题

    时间戳是long型的数据,但其他数据都是float型,但AsyncTask要求是统一数据类型.这样我就不能把时间戳放进AsyncTask里面进行处理,我就在doInBackground中获取时间戳然后 ...

  2. No-4.文件和目录常用命令

    文件和目录常用命令 结构 查看目录内容 ls 切换目录 cd 创建和删除操作 touch rm mkdir 拷贝和移动文件 cp mv 查看文件内容 cat more grep 其他 echo 重定向 ...

  3. Java中Synchronized和Lock的使用

    Lock的锁定是通过代码实现的,而 synchronized 是在 JVM 层面上实现的 synchronized在锁定时如果方法块抛出异常,JVM 会自动将锁释放掉,不会因为出了异常没有释放锁造成线 ...

  4. ios之AFN

    https://github.com/AFNetworking/AFNetworking 与asi-http-request功能类似的网络库,不过是基于NSURLConnection 和 NSOper ...

  5. WEB 前端模块化,读文笔记

    文章链接 WEB 前端模块化都有什么? 知识点 根据平台划分 浏览器 AMD.CMD 存在网络瓶颈,使用异步加载 非浏览器 CommonJS 直接操作 IO,同步加载 浏览器 AMD 依赖前置 req ...

  6. Git Bash Windows客户端乱码

    最近升级Git后,打开Git Bash出现了乱码,解决方法是: 注意,我升级之后,本地和字符集栏位出现了空白的情况.如果检查这里为空白,那么把本地设置为zn_CN,字符集设置为UTF-8

  7. 2018美赛准备之路——Matlab基础——基本运算符号表示

    π pi ln(x) log(x)   lg(x) log10(x) log2(x) log2(x) 根号 sqrt(x) x的y次方 x^y e的y次方 exp(y)    

  8. MySQL内外联结

    一.内联结(INNER JOIN) MySQL内联结使用INNER JOIN将多个数据表t1,t2隔开,结果是t1里的每一个数据行将与t2里的每一个数据行组合. 逗号连接符.CROSS JOIN和JO ...

  9. JS应用之正则表达式

    定义 正则表达式是用于匹配字符串中字符组合的模式. 创建正则表达式 两种方式: 1.new RegExp() let pattern1 = new RegExp('cat'); //第一个参数字符串 ...

  10. Photoshop保存的各种格式详解

    1.PSD(*.PSD) PSD格式是Adobe Photoshop软件自身的格式,这种格式可以存储Photoshop中所有的图层,通道.参考线.注解和颜色模式等信息.在保存图像时,若图像中包含有层, ...