復制物件通常有兩種方法。例如,使用 C 模型,一種方法是傳回一個新物件,第二種方法是將資料寫入現有物件/地址。以下是在 JS 中模擬執行此操作的兩種方法:
function copy_array(arr) {
// copy array and return existing array
const cp = [];
for(let i=0; i < arr.length; i )
cp[i] = arr[i];
return cp;
}
function copy_to(arr, to_arr) {
// copy to existing object
// possible to write to a "reference object", something like `&to_arr`
to_arr = []
for(let i=0; i < arr.length; i )
to_arr[i] = arr[i];
return to_arr;
const c = ['a','b','c'];
let arrc=copy_array(c);
const x=[];
copy_to(c, x);
是否可以通過這兩種方式復制物件?或者無法復制到參考物件/地址?
uj5u.com熱心網友回復:
對于一個物件,您基本上以相同的方式執行此操作,只是您用于for (key in object)迭代屬性名稱。
function copy_to(obj, to_obj) {
for (let key in obj) {
to_obj[key] = obj[key];
}
return to_obj;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/314987.html
標籤:javascript 指针 参考
