如果使用对象样式向函数添加属性会发生什么?

时间:2016-05-24 08:17:45

标签: javascript

奇怪的是,以下代码在最新的Chrome浏览器中没有出错:

function func(){
    x:1
}
func();

究竟发生了什么? (我不是要在函数中添加属性,我知道如何使用func.propertyarguments.callee.property

更新:如果x:1labeled statement,那么

function func(){
    1
}

被认为是有效的功能。这里1在做什么?它被忽略了吗?这是陈述,表达还是其他什么?

1 个答案:

答案 0 :(得分:6)

你的行

x:1

labeled statement

  

标记语句可与breakcontinue语句一起使用。它为带有标识符的语句添加前缀,您可以参考该标识符。

Example



var i = 0;
var j = 8;

checkiandj: while (i < 4) {
    console.log("i: " + i);
    i += 1;

    checkj: while (j > 4) {
        console.log("j: " + j);
        j -= 1;

        if ((j % 2) == 0)
            continue checkj;
        console.log(j + " is odd.");
    }
    console.log("i = " + i);
    console.log("j = " + j);
}
&#13;
&#13;
&#13;