1、对象的拓展
①Object.create(obj, {age:{value:18, writable:true, configurable:true, enumerable:true});
以指定对象为原型创建新的对象
②Object.defineProperties(obj, fullname:{get: function(){}, set:function(){} })
2、对象本身的两个方法:
get fullname(){ } 用来得到当前属性的回调函数
set fullname(data){ } 用来监视当前属性值变化的回调函数
3、Array拓展
arr.indexOf(value);
arr.lastIndexOf(value);
arr.forEach(function(item, index, arr){});
arr.map(function(item, index){});
arr.filter(function(item, index){});
4、Function的拓展
①Function.prototype.bind(obj)
将函数内的this绑定为obj, 并将函数返回;
② call(), bind(), apply()的比较
都能指定函数中的this
call(),apply()是立即调用函数,bind是将函数返回;
apply的参数是以数组的形式;