underscore源码笔记

问题

1、().call(this)什么意思

2、_.noConflict()怎么用?

3、obj通过wrapper变为_,wrapper对象的原型中有underscore的所有方法,_比obj多了这些方法,这种继承属于构造函数的继承还是原型链的继承?

4、nodejs中module有什么用?为什么还要判断它?把underscore的命名变量放在每个模块中的exports,为什么不同exports.呢?

5、iterator怎么用?

 

 

知识点

1、将内置对象的原型链,常用方法缓存为局部变量。

2、宿主环境支持的方法,以native开头表示。

3、区分nodejs和浏览器

if(typeof exports !== 'undefined'){

    //nodejs

}else{

    //browser

}

4、区分数组和对象

if(obj.length === +obj.length ){

    //array

}else{

    //object

}

5、判断一个元素是否在数组中

if(i in array)

6、判断obj中是否有这个key

if(_.has(obj, key)){

 

}

你可能感兴趣的:(underscore)