導航:首頁 > 編程語言 > 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相關的資料

熱點內容
網站設計編程如何開始學習 瀏覽:749
淘寶代碼隱藏導航不見了 瀏覽:7
macbookpro如何修改文件內容 瀏覽:965
java穩定排序 瀏覽:53
oppo文件管理的圖片 瀏覽:335
plc編程步數怎麼計算 瀏覽:142
ipad看電腦文件 瀏覽:935
成都製作pdf文件 瀏覽:735
怎麼樣點開電腦裡面的網路連接 瀏覽:755
微信怎麼退出賬號 瀏覽:32
w微信開發者工具 瀏覽:325
資料庫還原附加 瀏覽:713
打包成exe執行文件 瀏覽:652
信豐營銷app有哪些 瀏覽:463
蘋果文件下載項如何下載 瀏覽:179
ps摳婚紗教程 瀏覽:203
如何在移動硬碟上隱藏文件夾 瀏覽:451
瑞虎8老車機怎麼刷app 瀏覽:992
學ui設計要學java嗎 瀏覽:275
淘寶票房數據源怎麼調整 瀏覽:470

友情鏈接