3

事实上,我经常看到这被引用为为什么在编写 ECMAScript 时使用 K&R 风格。

function foo () {
  return
    {
      foo: 1
    }
  ;
}

这在 ECMAScript 或 Javascript 中不起作用:隐式分号添加会导致函数返回undefined. 但是我也经常看到这个

function bar () {
  var a = "BAR";
  return a
    .toLowerCase()
  ;
}

而且,我想知道为什么隐式分号不会导致返回"BAR",为什么会在bar那里返回?

4

1 回答 1

2

因为语法不适用于行尾的隐式分号。

如果添加分号:

function bar () {
  var a = "BAR";
  return a;
    .toLowerCase()
  ;
}

你会在下一行得到一个语法错误。

于 2011-05-31T21:27:32.943 回答