Initial_C

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

对象扩展

1 function extend (destination,source) {
2  for(var property in source)
3         destination[property] = source[property];
4         return destination;    
5 }

但旧版本下IE有个人,认为Object原型方法不应该被遍历出来,因此for in 无法遍历 valueOf,toString 属性名。

模式实现Object.keys  解决这个问题;

1 Object.keys = Object.key || function(obj) {
2     var a = [];
3     for(a[a.length] in obj);
4     return a; 
5 }

 

posted on 2016-03-21 17:19  Initial_C  阅读(148)  评论(0编辑  收藏  举报