1

只是试图做这样的事情,它不会工作,想知道是否还有?

var obj = {
    intiger:5,
    conditional:(something) ? "something" : "nothing",
    string:"nothing important"
};

:这是因为conditional. 无论如何要做到这一点,而不会破坏并保持这种obj.

我知道我能做到。

obj.conditional = (something) ? "something" : "nothing";
4

1 回答 1

4

使用另一组括号?

...
conditional:((something)?"something":"nothing"),
...

只需要让解析器知道:要注意哪些以及出于什么目的。

var foo = {
    bar: (true ? "true" : "false")
};
console.log(foo.bar); // true

function(){}如果需要在参考时做出决定,您也可以使用 a 。例如

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'
于 2012-11-07T19:27:03.393 回答