Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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_Arrays - Fatal编程技术网

Javascript 如何将项添加到嵌套数组?

Javascript 如何将项添加到嵌套数组?,javascript,arrays,Javascript,Arrays,假设我在Javascript中有这样一个数组: var cars = { vendor: [ { type: [ 'camry', 'etc' ] } ] } 在Javascript中,我可以使用什么命令将项添加到类型。。。例如,如果我想要一个文本框,用户可以将文本放入其中,然后点击一个按钮,将该项添加到数组中。需要添加的项目需要与“凯美瑞”和“etc”的项目放在一起。谢谢 您可以使用“添加到末尾”或“添加到前端”的方法将项目添加到数组中 var newValue = 1234; cars

假设我在Javascript中有这样一个数组:

var cars = { vendor: [ { type: [ 'camry', 'etc' ] } ] } 

在Javascript中,我可以使用什么命令将项添加到类型。。。例如,如果我想要一个文本框,用户可以将文本放入其中,然后点击一个按钮,将该项添加到数组中。需要添加的项目需要与“凯美瑞”和“etc”的项目放在一起。谢谢

您可以使用“添加到末尾”或“添加到前端”的方法将项目添加到数组中

var newValue = 1234;

cars.vendor[0].type.push(newValue);
然后可以使用类似的东西绑定事件处理程序

$("yourSelector").on("click", function(){
    var value = $("input").val();

    cars.vendor[0].type.push(value);
});
请记住,您拥有的根本不是JSON。它是JavaScript对象和数组的嵌套结构,使用文字语法声明。有关更多信息,请参阅。

尝试类似的方法

cars.vendor[0].type.push("foo");

其中“foo”是要添加的数据。

此问题的示例测试示例如下:

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
jQuery(document).ready(function(){
    var cars = {
        "vendor": [
            {
                "type": [
                    "camry",
                    "maruti",
                    "bmw"
                ]
            }
        ]
    };
    $("#add").click(function(){
        var types=cars["vendor"][0]["type"];
        types.push($("#json").val());
        $("#types").html(types.toString());
    });
});
</script>
</head>
<body>
<input type="text" id="json" name="json"/>
<input type="button" id="add" name="add" value="ADD"/>
<div id="types" style="margin:10px;border:1px dotted green;width:400px;"></div>
</body>
</html>

jQuery(文档).ready(函数(){
var cars={
“供应商”:[
{
“类型”:[
“凯美瑞”,
“马鲁蒂”,
“宝马”
]
}
]
};
$(“#添加”)。单击(函数(){
变量类型=汽车[“供应商”][0][“类型”];
push($(“#json”).val());
$(“#types”).html(types.toString());
});
});

您可以尝试下面给出的方法

var cars = { vendor: [ { type: [ 'camry', 'etc' ] } ] } ;
cars.vendor[0].type[2]="abc";

在这里唤醒恐龙,但是如果还没有定义“类型”,这意味着用户首先登陆页面并希望动态构建供应商对象,该怎么办?