对象文字 - 添加项目

时间:2012-10-10 13:10:30

标签: javascript

我的代码中有这个: -

var chartOptions = {
      series: {
               bars: { show: true }
              }
};

有没有办法可以通过代码向chartOptions对象添加另一个项目,以便将一个项目添加到系列部分,如下所示: -

series: {
    bars: {show: true, fillColor="Red"}
}

我该怎么做呢?我期待的是: -

chartOptions["series"]["bars"]["fillColor"] = "Red"

但这不起作用。我对此很新,所以任何帮助都会非常感激。

马特

3 个答案:

答案 0 :(得分:0)

您可以使用:代替=

来内联添加
series: {
    bars: {show: true, fillColor: "Red"}
}

或者您可以使用jQuery.extend()或JavaScript代码将其添加到代码中:

chartOptions.series.bars.fillColor = "Red";

您的代码chartOptions["series"]["bars"]["fillColor"] = "Red"也应该有效,但它是处理数组时的符号。点符号通常在处理对象时使用。这两种符号大多可以互换。

答案 1 :(得分:0)

function extend(destination, source) {
    for (var property in source) {
        destination[property] = source[property];
    }

    return destination;
}

var chartOptions = {
    series: {
        bars: {
            show: true
        }
    }
};

Object.extend(chartOptions.series.bars, {
    fillColor: "Red"
});

console.log(chartOptions);

答案 2 :(得分:0)

看看这个jsfiddle:http://jsfiddle.net/5KMfy/4/

我写了2个工作示例,无论有没有jQuery,希望这会有所帮助。