Chr*_* W. 5 javascript syntax ecmascript-5 ecmascript-6
我的一位同事写了ES6代码......
return map(orderedContentUuids, contentUuid => { uuid: contentUuid });
你可能猜到他打算返回对象{uuid: contentUuid },但由于它是一个箭头函数,花括号{实际上会启动一个新的块.(正确的代码是return map(orderedContentUuids, contentUuid => ({ uuid: contentUuid }));).
但是,出乎意料的是,此代码转换并运行没有错误.没有错误,因为uuid: contentUuid似乎评估contentUuid.
您可以看到,如果您放入JavaScript控制台,foo: 'bar'它将评估为"bar".
咦?这是怎么回事.从什么时候开始就是有效的JS?
糟糕!我刚想通了.
foo: 'bar' 被评估为"标签",我没有意识到这是一个JavaScript功能.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/label
| 归档时间: |
|
| 查看次数: |
55 次 |
| 最近记录: |