导航:首页 > 编程语言 > extjsclone

extjsclone

发布时间:2023-07-23 10:13:16

『壹』 js中如何复制一个对象并获取其所有属性和属性对应的值

如果是使用了 JQ EXTJS 的话本身就有 对象克隆的 函数库可以使用 如 extjs 使用

ext.ux.util.clone()


没有用这些的话 可以自己写一个 克隆函数 网上有资源 比如

functiondeepClone(obj){varresult={},oClass=isClass(obj);
//if(oClass==="Object"){
//result={};
//}elseif(oClass==="Array"){
//result=[];
//}else{
//returnobj;
//}
for(keyinobj){
var=obj[key];
if(isClass()=="Object"){
result[key]=arguments.callee();
}elseif(isClass()=="Array"){
result[key]=arguments.callee();
}else{
result[key]=obj[key];
}
}
returnresult;
}
functionisClass(o){
if(o===null)return"Null";
if(o===undefined)return"Undefined";
returnObject.prototype.toString.call(o).slice(8,-1);
}

或者参考 extjs 的方法

function(o){
if(!o||'object'!==typeofo){returno;}
if('function'===typeofo.clone){returno.clone();}
varc='[objectarray]'===object.prototype.tostring.call(o)?[]:{};
varp,v;
for(pino){
if(o.hasownproperty(p)){v=o[p];
if(v&&'object'===typeofv){
c[p]=ext.ux.util.clone(v);
}else{
c[p]=v;
}
}
}
returnc;};

『贰』 Extjs 数组怎么自定义,并且赋值

Extjs 数组定义使用Ext.Array内置函数。
extjs4.0 Ext.Array 函数方法大全:
Ext.onReady(function(){
var array = ['1','2','3','4','1','6','7'];
Ext.Array.clean(array); //['1','2','3','4','6','7'];
Ext.Array.clone(array); // 克隆数组
Ext.Array.contains(array,'1'); //返回true 检查数组内是否包含指定元素
var array2 = ['1','2','3','4','5','6'];
Ext.Array.difference(array,array2); //返回 存在于 array中而不存在array2中的元素 ['','7']
Ext.Array.every(array,function(str,index,array){ //遍历数组 第二个参数执行回调函数 (当前元素,当前索引,当前数组(array)) 指定作用域 返回false 立即返回
//alert(str);
return true;
});
Ext.Array.filter(array,function(str,index,array){ //遍历数组 第二个参数执行回调函数 (当前元素,当前索引,当前数组(array)) 指定作用域 返回值: 返回true的元素组成新数组
//alert(str);
return true;
});
var array3 = ['1','2','3','4',['1','2','3'],'6','7'];
Ext.Array.flatten(array3); //返回值:将多维数组 平铺成一维数组
Ext.Array.forEach(array,function(str,index,array){ //单纯的遍历数组
//alert(str);
});
Ext.Array.from(array,true); //转换给定值为数组 如果为undefined 或 null 则返回空数组 本身为数组返回数组 可迭代返回数组拷贝 单值返回值包含该值的数组
Ext.Array.include(array,'100'); //向array末尾插入100 前提是array中不存在为100的值
Ext.Array.indexOf(array,'100',0); //在数组内寻找指定值 第三个参数为起始位置 返回值:所在位置
alert(Ext.Array.intersect([array,array2])); //合并多个数组 数组元素唯一
Ext.Array.map(array,function(str,index,array){ //根据返回值组成数组
return str;
});
Ext.Array.max(array,function(s1,s2){ //返回数组中最大值 使用比较函数时返回值为负数时 小 0为相等 正数为大
return 0;
});

Ext.Array.mean([1,2,3,4,5]); //返回平均值
Ext.Array.min(array,function(s1,s2){ //返回数组中最小值 可使用比较函数
return 0;
});
var array4 = [{'a1':'a1'},{'a1':'a2'},{'a3':'a3'}];
Ext.Array.pluck(array4,'a1'); //在数组json数据中查找键为a1的值返回数组 (不改变数组大小)
Ext.Array.remove(array,'1'); //删除数组中指定元素 注意:只删除一项
Ext.Array.some(array,function(s1,s2){ //遍历数组 返回true立即返回
return false;
});
var array5=['s','a','z','c'];
Ext.Array.sort(array5); //排序数组 默认以字符排序 可选排序函数
var array6=[1,2,3,4,5];
Ext.Array.sum(array6); //求和
Ext.Array.toArray(array6,2,4); //转换任何可迭代的值为数组 参数 1 iterable 2 start 3 end
Ext.Array.merge(array,array6); //组合数组
Ext.Array.unique(array,array6); //组合数组 merge的别名
Ext.Array.unique(array); //获取具有唯一元素的新数组

})

阅读全文

与extjsclone相关的资料

热点内容
淘宝卖二手的app叫什么名字 浏览:217
安卓代码读取界面信息 浏览:714
数控车床车55度螺纹怎么编程 浏览:391
word桌面找不到文件 浏览:585
数控车床编程怎么做到的 浏览:639
哈尔滨市行政区划代码 浏览:716
如何显示文件扩张 浏览:283
ps怎么移植文件 浏览:443
传奇补丁文件说明 浏览:513
奥维地图怎么设置网络叠加 浏览:407
linux加载库文件so失败 浏览:714
大家都想要的app 浏览:58
程序员比特币 浏览:568
mysqlfrm是什么文件 浏览:665
win10点击文件夹声音消失 浏览:963
苹果手机空白文件名 浏览:833
linuxmv覆盖合并文件夹 浏览:932
不开访客网络怎么联网 浏览:631
win10的软件卸载 浏览:779
crv汽车自带网络怎么打开 浏览:973

友情链接