JS實現值複製

2022-01-30 13:32:47 字數 674 閱讀 4666

在js中物件一般都是傳位址,後續修改也會影響原始資料。例如這樣。

var a=;

var c=a;

c.b="c";

console.log(a);

console.log(c);

會發現a.b也變成了"c"。 

以下是網上一位高手寫的js實現值複製,獨立複製乙個物件,避免雙向修改。

//

值複製function

clone(obj) ;

for (var k in

obj)

else}}

else

return

o;}

上述**有乙個bug,就是針對null的處理,null在js中的型別是object,上述**會將null複製成{}。根本的問題在於高手在條件「typeof obj === 'object' && typeof obj !== 'null'」的時候做了錯誤的判斷,試想型別是object了肯定型別就不是null了吧。以下是修正後的方法:

//

值複製function

clone(obj) ;

for (var k in

obj)

else}}

else

return

o;}

用js實現複製

const copyele document.queryselector contenttext 獲取要複製的節點 const range document.createrange 創造range window.getselection removeallranges 清除頁面中已有的selecti...

js實現複製功能

在一些涉及到個人資訊比較多的h頁面,經常可能會出現複製賬號到剪下板的功能,那麼怎麼用js怎麼實現複製貼上功能呢?正好最近開發的模組中又有乙個這樣的功能,總結一下,方便後面使用。效果圖 核心 require clipboard function clipboard aftercopy function...

原生js實現複製功能

瀏覽器提供了 copy 命令 可以複製選中的內容 document.execcommand copy var text document.getelementbyid text innertext var input document.getelementbyid input input.value...