最赞回答 / 艾伦Aaron
首先做框架要考虑兼容与性能问题for in
语句对数组对象进行遍历潜在的bug在于:如果原生Array类被其他的js脚本库进行了原型扩展(比如多加一个toJSON方法即Array.prototype.toJSON=xxxx),那么用for
in遍历扩展后的Array对象的逻辑将与遍历原生Array对象的逻辑发生差异。
2014-11-22
通过$$()实际上是实例化了init这个构造函数,返回的是一个新的函数对象,而这个函数对象的[[scope]]的原型链并没有name这个属性,但是有selector。那假如我要用ajQuery.fn的name属性怎么办?就把这个构造函数init的prototype指向ajQuery.fn,那么它就能拥有ajQuery.fn的属性了,比如name和新定义的say()了。
2014-11-20
function(window, factory) {
factory(window)
}(this, function() {
return function() {
//jQuery的调用
}
})
这样行吗?
factory(window)
}(this, function() {
return function() {
//jQuery的调用
}
})
这样行吗?
2014-11-19