gpt4 book ai didi

javascript - 主干命名空间

转载 作者:行者123 更新时间:2023-11-28 01:46:19 25 4
gpt4 key购买 nike

我正在尝试从《开发 Backbone.js 应用程序》一书中学习 Backbone 。
它描述了臭名昭著的 TodoMVC 应用程序,我也在几个在线教程中查看过该应用程序。

我似乎找不到任何关于这行代码含义的解释:

var app = app || {} ;

在书中,模型、 View 、集合、路由器的代码被分割成单独的文件,并放置在相应的文件夹中。每个文件都以此代码开头,但没有解释为什么它以此开头。我认为这是某种命名空间,而 || 是逻辑或运算符,但坦率地说,我不知道他们在这里想要完成什么。

谁能帮我解答一下?
瓦利肯

最佳答案

在构建应用程序的某个时刻,您可能希望异步加载文件,这意味着您无法控制文件的解释顺序,因此您的 app 变量何时声明。

使用var app = app || {} ; 可让您在 Loose Augmentation 上使用变体模式:您可以将此语句粗略地翻译为如果应用程序已声明,则保留它,如果没有创建一个新对象并使用它

并参见 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_Operators有关此声明的内部工作原理的解释:

The && and || operators actually return the value of one of the specified operands, so if these operators are used with non-Boolean values, they may return a non-Boolean value.

关于javascript - 主干命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20264817/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com