【问题标题】:How does new wrapper work in JavaScript?新包装器如何在 JavaScript 中工作?
【发布时间】:2012-08-06 21:25:53
【问题描述】:

在 underscore.js 的上下文中:

// Create a safe reference to the Underscore object for use below.
   var _ = function(obj) { return new wrapper(obj); };

简单来说,这个函数返回什么?

【问题讨论】:

  • 它返回包装器类型的新实例。在此处阅读有关 javascript 对象模型的更多信息:developer.mozilla.org/en-US/docs/JavaScript/Guide/…
  • 这是一段面向对象的代码,基于您可能在某处拥有的其他一些 javascript。里面有包装对象/类。

标签: javascript underscore.js


【解决方案1】:

Itwrapper constructor 的包装函数,允许您使用不带new keyword 的下划线。调用下划线将始终返回一个新的wrapper 实例。


顺便说一句,wrapper 函数已在 this commit 中删除。 _ 函数本身现在是构造函数,请参阅 Understanding the declaration of the underscore in _.js? 进行解释。

【讨论】:

    【解决方案2】:

    简单地说,它是一个 'wrapper' 的构造函数,让你的事情变得更容易

    // this allows you to do things such as:
    var a = _({/*object*/});
    
    // rether than something like:
    var a = new wrapper({/*object*/});
    

    我认为从 underscore.js 开始,它是为了让你的编码保持整洁和简单:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-22
      • 2018-05-19
      • 1970-01-01
      • 1970-01-01
      • 2018-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多