javascript - 在javascript中将JSON对象添加到多维数组

标签 javascript arrays json object winjs

我的目标是根据特定条件将 JSON 对象添加到数组中,然后将其用于构造 WINJSList。使用 array.push 方法后,我真的很难访问列表或数组的元素。我想访问这些元素以确保我的加法正确。任何帮助将不胜感激。我有以下代码

var names_Array = new Array;                
var names_List = new WinJS.Binding.List(names_Array);

if (condition) {
  if (condition) {
    names_List.push({ 
      name: "Joe Dowling", 
      image: "image/Joe Dowling.png", 
      ClientID: "1234" 
    });
  } else if (condition) {
    names_List.push({
      name: "Esteban Flamenco ", 
      image: "image/Esteban Flamenco.png", 
      ClientID: "6666" 
    });
  } else if (condition) {
    names_List.push({ 
      name: "Plain Jane ", 
      image: "image/Plain Jane.png", 
      ClientID: "0000" 
    });
                        }
console.log(names_Array);
console.log(names_Array[0]);
console.log(names_List);
console.log(names_List[0]);

我也尝试过:

var names_Array = new Array; 
if (condition) { 
  if (condition) {
    names_Array.push({
      name: "Joe Dowling", 
      image: "image/Joe Dowling.png", 
      ClientID: "1234" 
    });
  } else if (condition) {
    names_Array.push({
      name: "Esteban Flamenco ", 
      image: "image/Esteban Flamenco.png", 
      ClientID: "6666" 
    });
  } else if (condition) {
    names_Array.push({ 
      name: "Plain Jane ", 
      image: "image/Plain Jane.png", 
      ClientID: "0000" 
    });
  }

  var names_List = new WinJS.Binding.List(names_Array);

在控制台中,我要么未定义,要么得到 [object object]

最佳答案

对于 WinJS.Binding.List,请参阅文档 here

代码存在几个问题:

  • WinJS List 使用传递给构造函数的数组来初始化自身。此后,如果数组被修改,更改不会传播到 winjs 列表。
  • 要访问索引处的元素,请使用list.getAt(index)

这段代码应该可以工作:

var data = []; 
data.push({
    name: "Joe Dowling",
    image: "image/Joe Dowling.png",
    ClientID: "1234"
});
data.push({
    name: "Esteban Flamenco ",
    image: "image/Esteban Flamenco.png",
    ClientID: "6666"
        });
data.push({
    name: "Plain Jane ",
    image: "image/Plain Jane.png",
    ClientID: "0000"
});

var list = new WinJS.Binding.List(data);
var item = list.getAt(0);
console.info(JSON.stringify(item))

关于javascript - 在javascript中将JSON对象添加到多维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16811145/

相关文章:

javascript - 使用按钮(在我的转发器中)使用 javascript 显示隐藏信息但似乎不起作用

Java 数组创建和数组名称更改

java - 如何在不更改名称的情况下在 Java 中扩展数组

java - PHP 服务器未使用 JSON 对象进行连接

javascript - d3js 在传单 map 上强制布局

javascript - 如何将 Nivo Slider 显示的图像居中

javascript - AngularJS,当使用双击事件时,$scope.amount 不显示为两位小数

javascript - 滚动到动画

jquery - Javascript - 在隐藏字段中存储对象数组

ios - 服务器拉取后 JSON 或 NSDATA 不完整/被截断