gpt4 book ai didi

javascript - 为什么在 JS 库中常见的做法是重复变量名并添加 'or object'

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:25:45 27 4
gpt4 key购买 nike

我试图更好地掌握 JS 语法,我想知道为什么许多库中的常见做法是在已声明具有相同名称的变量后重复对象名称。请看下面:

var Backbone = Backbone || {};    // <= Why the duplication?

var listeners = this._listeners || (this._listeners = {});

更新:

经过进一步研究,我发现了一个写得很好的 article评估许多惯用语表达。

本文还解释了立即调用函数表达式 (IIFE) 背后的用法,即在函数中包装函数,如下所示:

(function() {
console.log('Hello!');
})();

这是另一个像我这样的新手不太理解的 JS 脑筋急转弯。

最佳答案

var Backbone = Backbone || {};

表示如果 Backboneundefinednullfalse,则将其设置为 {}/


更长的解释:

赋值运算符计算从逻辑运算符(即使 Javascript 没有真正的逻辑运算符,因为它们也适用于非 bool 操作数)从计算。

A || 这样的表达式如果 Aundefinednullfalse,则 B 返回 B >.

所以 A = A || B 要么保留 A 值(如果它已有值),要么将 B 分配给 A

关于javascript - 为什么在 JS 库中常见的做法是重复变量名并添加 'or object',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16215003/

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