前言
在開始之前,先給大家介紹下js中使用使用原型(prototype)定義方法的好處
經常在前端面試或是和其他同行溝通是,在談到構造在JS定義構造函數的方法是最好使用原型的方式:將方法定義到構造方法的prototype上,這樣的好處是,通過該構造函數生成的實例所擁有的方法都是指向一個函數的索引,這樣可以節省內存。
而本文主要給大家介紹了關于Js利用prototype自定義數組方法的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。
題目
如何實現下列代碼:
[1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5]
解決方法
使用array的prototype屬性,自定義duplicator()
方法,js代碼如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style></style> <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js" type="text/javascript"></script> </head> <body> <script> Array.prototype.duplicator = function() { let s = this.concat(this) return s } let t = [1,2,3,4,5].duplicator() console.log(t) </script> </body> </html>
在控制臺顯示效果如下:
注意點
在書寫這段代碼時Array.prototype.duplicator
注意不要添加任何括號,function 內部的this 指代調用這個方法的對象,即array.
總結
以上就是這篇文章的全部內容了,本文還有許多不足,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。