【问题标题】:Pushing value to sub-array将值推送到子数组
【发布时间】:2014-01-20 16:14:51
【问题描述】:

我在使用 .push() 时遇到了一些问题。我相信问题在于我如何定义我的变量。基本上,变量“缓存”键与 JSON 中的 data.system[] 不对应。我正在尝试使用此(代码的缩写版本)将数字推送到现有数组:

var cache = ['cpu','mem'];
function doAjax() {  /* toggled when ajax button pressed */
   $.getJSON( "ajax.php", function(data) {
       $.each(data.system, function(i, key) {
              console.log(cache.i); /* undefined logged */
              cache.i.push(key.value); /*Uncaught TypeError: Cannot call method 'push' of undefined */
       });
   });
}

JSON:

{
 system: {
   cpu: {
      value: 1
   },
   mem: {
      value: 330
   }
}
}

Fiddle(我认为我没有正确设置 JSON 数据):http://jsfiddle.net/x9JaP/

【问题讨论】:

  • 我在你的 json 结构中看不到数组。
  • 我忽略了外面的 { }。 JSON 完美适用于其他代码领域。

标签: jquery json push


【解决方案1】:

如果你改变这个:

var cache = ['cpu','mem'];

为此:

var cache[] = {'cpu','mem'};

还有这个:

console.log(cache.i);
cache.i.push(key.value);

为此:

console.log(cache[i]);
cache.push(key.value);

你可以有更多的运气。

【讨论】:

    猜你喜欢
    • 2020-10-23
    • 1970-01-01
    • 2020-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-07
    • 2012-02-27
    相关资源
    最近更新 更多