使用JavaScript

时间:2016-12-05 18:44:30

标签: javascript arrays json

我有一个JSON对象,例如:

{result: 
   [ 
     { 
       "id": "1",
       "name": "name 1"
      },
      { 
       "id": "2",
       "name": "name 2"
      },
      { 
       "id": "3",
       "name": "name 3"
      }
  ]
}

我想知道如何将这个JSON中的元素(例如:“user”:“username”)添加到每个对象中,结果会出来:

{result: 
   [ 
     { 
       "id": "1",
       "name": "name 1",
       "user": "user 1"
      },
      { 
       "id": "2",
       "name": "name 2",
       "user": "user 2"
      },
      { 
       "id": "3",
       "name": "name 3",
       "user": "user 3"
      }
  ]
}

我试图做类似的事情:

result.user = user.data 

但它并不是我需要的。我想知道我是否可以使用for循环,如

for (var i = 0; i < result.length; i++) {
  result.user = user.data;
}

3 个答案:

答案 0 :(得分:3)

你关闭......

import com.sun.jna.platform.win32.*;
import java.text.MessageFormat;

public static void main(String args[]) {
    Kernel32 kernel = Kernel32.INSTANCE;
    WinNT.OSVERSIONINFOEX vex = new WinNT.OSVERSIONINFOEX();
    if (kernel.GetVersionEx(vex)) {
        System.out.println(MessageFormat.format("{0}.{1}.{2}",
            vex.dwMajorVersion.toString(),
            vex.dwMinorVersion.toString(),
            vex.dwBuildNumber.toString()));
    }
}

基本上,结果是一个对象数组;你需要告诉它在访问内部时要引用哪一个。

答案 1 :(得分:1)

是使用数组的索引。因为您希望{0}元素为{0},所以将1添加到索引。 forEach将迭代每个数组元素。其中a是元素,索引是1元素索引。

a

答案 2 :(得分:0)

首先,你需要将这个json放在一个变量中,然后你可以在对象结构数组中进行交互。

&#13;
&#13;
var object = {result: 
       [ 
         { 
           "id": "1",
           "name": "name 1",
           "user": "user 1"
          },
          { 
           "id": "2",
           "name": "name 2",
           "user": "user 2"
          },
          { 
           "id": "3",
           "name": "name 3",
           "user": "user 3"
          }
      ]
    };


for (var i = 0; i < object.result.length; i++) {
  object.result[i].user = "user " + i;
}

console.log(object);
&#13;
&#13;
&#13;