这个javascript语法/模式是什么意思

What does this javascript syntax / pattern mean?

本文关键字:是什么 意思 模式 javascript 语法 这个      更新时间:2023-09-26

我在代码中看到了这种模式,我正在努力理解它背后的想法

foo : {
    //some code here
    console.log('1');
}

foo是一些html节点,console.log表示一些代码。我看到console.log总是执行,我认为没有理由使用这种模式,而不仅仅是直接编写console.log。

如果我在一个未定义的变量上使用它,你也可以看到它是有效的。

this_does_not_exists : {
    console.log(2);
}

有人使用这种模式的原因是什么?

这是一个标签,与变量无关。这些通常仅在处理whilefor循环时有用,当您希望从最内部的循环以外的循环中breakcontinue时。

MDN示例:

loop1:
for (i = 0; i < 3; i++) {      //The first for statement is labeled "loop1"
   loop2:
   for (j = 0; j < 3; j++) {   //The second for statement is labeled "loop2"
      if (i == 1 && j == 1) {
         continue loop1;
      }
      console.log("i = " + i + ", j = " + j);
   }
}

在本例中,代码是continue,从内部循环中调用外部循环。