我試圖建立使用安德魯·伯吉斯的在線教程(http://code.tutsplus.com/tutorials/build-your-first-javascript-library--net-26796)我自己的JavaScript庫和我以下罰款,但我想知道get: function(selector)
做下面的代碼是什麼:任何人都可以幫助解釋「get:function()」和.prototype給我嗎?
(function() {
function Dyn(elems) {
for (var i; i < elems.length; i++) {
this[i] = elems[i];
}
this.length = elems.length;
}
var DynamicScript = {
/*here it is!-->*/get: function(selector) {
var elems;
if (typeof selector === "string") {
elems = document.querySelectorAll(selector);
} else if (selector.length) {
elems = selector;
} else {
elems = [selector];
}
return new Dyn(elems);
}
};
return DynamicScript;
}());
如果有人可以告訴我它是什麼,我會非常感激。
此外,在本教程中,有一個功能,看起來像這樣:
Dyn.prototype.map = function (callback) {
var results = [], i = 0;
for (; i < this.length; i++) {
results.push(callback.call(this, this[i], i));
}
return results;
};
我真的想什麼呢.prototype
一個不錯的,簡單的解釋。我一直無法理解我已經遇到過的情況,所以如果你可以假裝你正在和一個白癡對話(假裝沒太多點),並以最簡單的方式解釋它,我將非常感激。
感謝您的關注,我真的需要幫助。
你可以看到[這個問題](http://stackoverflow.com/questions/572897/how-does-javascript-prototype-work)和[this](https://developer.mozilla.org/en -US/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype),[這裏](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/get)吸氣劑。大多數情況下,我建議您查看[MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects),瞭解如何在Javascript中使用對象。 –
第一個只創建一個具有「get」屬性的對象,該屬性具有一個函數作爲其值。 'prototype'是JavaScript的繼承機制。這些是根本問題。在嘗試創建庫之前學習語言基礎知識可能是一個好主意。 –
關於第一個問題:[使用對象](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects#Using_object_initializers)。關於'prototype' [繼承和原型鏈](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Inheritance_and_the_prototype_chain) –