只是尝试做这样的事情而且它不起作用,想知道是否还有?
var obj = {
intiger:5,
conditional:(something) ? "something" : "nothing",
string:"nothing important"
};
由于:
中存在conditional
,因此会中断。无论如何要做到这一点,不要打破并保持这种格式obj
。
我知道我能做到。
obj.conditional = (something) ? "something" : "nothing";
答案 0 :(得分:4)
使用另一组括号?
...
conditional:((something)?"something":"nothing"),
...
只需让解析器知道要关注哪个:
以及出于何种目的。
var foo = {
bar: (true ? "true" : "false")
};
console.log(foo.bar); // true
如果需要在参考时作出决定,您也可以使用function(){}
。 e.g。
var foo = {
bar:function(){
return this.baz == 'Brad' ? 'Me' : 'Not Me';
},
baz: 'Brad'
};
console.log(foo.bar()); // 'Me'
foo.baz = 'Thomas'; console.log(foo.bar()); // 'Not Me'