设置具有许多逗号和多个不同对象的单个JavaScript变量

setting single javascript variable with many commas and multiple different objects

本文关键字:对象 单个 变量 JavaScript 许多逗 设置      更新时间:2023-09-26

代码演示:

请参阅第 34 行:

// Tree creation functions
function branch(b) {
    var end = endPt(b), daR, newB;
    ...

(其中endPt(b)daRnewB是此函数中定义的变量,但为简单起见省略)

这是怎么回事?

可能的解决方案:我已经阅读了这些资产var end等于这些资产中的每一个,

在 JavaScript 中,您可以使用逗号对任意数量的表达式进行分组 成单个语句。这基本上是 for 的工件 语句,其中多个赋值表达式通常分组 一起在标题中。

从这里:

这种解释在这里直接适用吗?

非常简单,您可以通过逗号分隔来内联声明多个变量,因此我们可以分解您的示例:

function branch(b) {
    var end = endPt(b), //a new variable called "end" is created and assigned the result of endPt with "b" as the parameter
    daR, //an empty variable called "daR" is declared
    newB; //an empty variable called "newB" is declared

正如@Phil指出的那样,将此语句分为以下几点可能更容易:

var end = endPt(b);
var daR, newB;

(其中endPt(b),daR,newB是在此函数中定义的变量,但为简单起见省略)

这是怎么回事?

您看到变量 enddaRnewB声明end也使用值 endPt(b) 进行初始化。它是一个多var语句,等效于

var end = endPt(b);
var daR;
var newB;

这种解释在这里直接适用吗?

不,这个解释在这里不适用,它与你在这里的结构没有任何关系。您应该阅读有关该问题的其他答案。

"逗号表达式"解释将适用于

var end = (endPt(b), daR, newB);

其中,它将计算endPt(b)daR ,然后将 newB 的值分配给 end