考虑这两个功能.
function func1() {
return
{
foo: 'bar'
}
}
function func2() {
return {
foo: 'bar'
}
}
Run Code Online (Sandbox Code Playgroud)
alert(typeof func2()) //return object
alert(typeof func1()) //return undefined
为什么在许多其他语言中括号的位置不重要?它是语言功能还是错误?
Den*_*ret 44
因为自动分号插入.第一个代码与.相同
function func1() {
return;
{
foo: 'bar'
}
}
Run Code Online (Sandbox Code Playgroud)
如果你想知道为什么这段代码不会产生语法错误,那foo:就是标签.
关于
它是语言功能还是错误?
这是一个功能.但是非常危险的一个.保持它成为你的一个功能的最好方法是坚持一致的格式化风格(我建议使用谷歌风格指南,直到你有足够的经验来制作自己的格式.)
| 归档时间: |
|
| 查看次数: |
759 次 |
| 最近记录: |