1-1 数组的原型对象

  1. var arr = [1,2,3];
  2. console.log(Array.prototype)
  3. console.log(arr.__proto__==Array.prototype)
  1. - 数组能使用toString(),push(),unshift(); 因为数组的原型上有这些方法
  2. - 每一个对象都有__proto__属性,指向它的原型对象。

数组原型.png

2-2 原型对象作用

  1. # 原型对象:是某一类对象的基类,所有创建的对象都会共享该原型对象 (共享机制)
  2. # 作用:将对象通用的方法挂载在原型上
  1. var arr = [1,2,3]
  2. Array.prototype.sum = function(params){
  3. if(Array.isArray(params)){
  4. return params.reduce((a,b)=>a+b)
  5. }
  6. }
  7. console.log(arr.sum(arr));
  8. # 现在每一个数组都拥有了sum方法。