最贊回答 / 艾倫Aaron
首先做框架要考慮兼容與性能問題for in
語句對數(shù)組對象進(jìn)行遍歷潛在的bug在于:如果原生Array類被其他的js腳本庫進(jìn)行了原型擴(kuò)展(比如多加一個(gè)toJSON方法即Array.prototype.toJSON=xxxx),那么用for
in遍歷擴(kuò)展后的Array對象的邏輯將與遍歷原生Array對象的邏輯發(fā)生差異。
2014-11-22
通過$$()實(shí)際上是實(shí)例化了init這個(gè)構(gòu)造函數(shù),返回的是一個(gè)新的函數(shù)對象,而這個(gè)函數(shù)對象的[[scope]]的原型鏈并沒有name這個(gè)屬性,但是有selector。那假如我要用ajQuery.fn的name屬性怎么辦?就把這個(gè)構(gòu)造函數(shù)init的prototype指向ajQuery.fn,那么它就能擁有ajQuery.fn的屬性了,比如name和新定義的say()了。
2014-11-20
function(window, factory) {
factory(window)
}(this, function() {
return function() {
//jQuery的調(diào)用
}
})
這樣行嗎?
factory(window)
}(this, function() {
return function() {
//jQuery的調(diào)用
}
})
這樣行嗎?
2014-11-19