任何人都可以帮我解释“get:function()”和.prototype吗?

时间:2014-02-28 16:15:34

标签: prototype javascript

我正在尝试使用Andrew Burgess的在线教程(http://code.tutsplus.com/tutorials/build-your-first-javascript-library--net-26796)构建我自己的JavaScript库并且遵循它很好,但我想知道get: function(selector)在以下代码中的作用:

(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所做的一个很好的,简单的解释。我无法理解我已经遇到过的事情,所以如果你可以假装你正在和一个白痴谈话(假装不是太多点)并用最简单的术语解释它,我会非常感激。

感谢您的关注,我确实需要帮助。

1 个答案:

答案 0 :(得分:0)

好!

所以,当我问这个问题时,我是一个JavaScript新手,并且可悲地没有意识到对象!

现在我知道对象是什么,我认识到代码中的语法,并且能够理解它的含义!

var DynamicScript = {
  get: function(){ 
    ...

只是创建一个属性,获取值function(){...

Dyn.prototype.map = function (callback) {

几乎完全相同的事情,为名为map的Dyn创建一个属性,其值为该函数。

钽哒!