題目
如何實現下列代碼:
[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.