Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何构建键/值格式的javascript对象_Javascript_Object_Formatting - Fatal编程技术网

如何构建键/值格式的javascript对象

如何构建键/值格式的javascript对象,javascript,object,formatting,Javascript,Object,Formatting,我有一个序列输入标签,比如 <input id="t1" value="1"> <input id="t2" value="2"> <input id="t3" value="3"> 如何实现?使用哪个函数或方法?使用数组?您描述的对象无效。假设你的意思是: { "t1":1, "t2":2, "t3":3 } 只需在元素上循环,并检查id和value属性即可获得数据 var inputs = document.getElementsBy

我有一个序列输入标签,比如

<input id="t1" value="1">
<input id="t2" value="2">
<input id="t3" value="3">

如何实现?使用哪个函数或方法?使用数组?

您描述的对象无效。假设你的意思是:

{
   "t1":1,
   "t2":2,
   "t3":3
}
只需在元素上循环,并检查id和value属性即可获得数据

var inputs = document.getElementsByTagName('input');
var ob = {};
for (var i = 0; i < inputs.length; i++) {
  var input = inputs[i];
  ob[input.id] = input.value;
}

输出对象没有意义,它是一个没有关键点的对象。假设你真正想要的是:

{
    "t1": 1,
    "t2": 2,
    "t3": 3
}
您可以执行类似操作,inputVals将包含上述对象:

var inputs = document.getElementsByTagName('input'),
    inputVals = {};

for (var i = 0, il = inputs.length; i < il; i++) {
    inputVals[inputs[i].id] = inputs[i].value;
}

jQuery serializeArray在获得您想要的东西方面走了很长的路


它不会返回您在问题中给出的确切数组格式,但它应该给您提供一些可以使用的东西。

我什么也没试过,我一点都不知道。好吧,您至少应该用谷歌搜索一下。您需要这个做什么?您的问题所需的格式甚至不是有效的javascript。
var inputs = document.getElementsByTagName('input'),
    inputVals = {};

for (var i = 0, il = inputs.length; i < il; i++) {
    inputVals[inputs[i].id] = inputs[i].value;
}