Loading

js数组和对象的区别,ajax传入多个参数值,ajax传多个数组数据

数组分为索引数组和关联数组

js中先声明一个空数组
arr = []

索引数组

索引是整数,如arr[0] = 'a'

关联数组

索引是自定义的字符串,如arr['a'] = 'a'

js中的对象

你把它理解成关联数组就可以了

场景

自定义键值的时候使用

js中的数组

只支持索引数组

场景

需要传输多组数据

怎样在js中使用关联数组?

在js中的数组不支持关联数组arr['a'] = 'a'
如果想使用关联数组,可以用对象替换arr.a = 'a'

实践

使用ajax传多组数据

    var goods = [];
    for(i=1;i<=2;i++){
        var goods2 = [];
        goods2['goods_id'] = i;
        goods.push(goods2);
    }
    console.log(goods);
    $.ajax({
        url:'/user/wangzhabo',
        type:'post',
        data:{
            goods:goods
        },
        success:function(res){
            // console.log(res);
        }
    });

上面的代码你执行会发现没有传数据,因为js不支持关联数组

修改后的代码

    var goods = [];
    for(i=1;i<=2;i++){
        //下面是关联数组使用js对象
        var goods2 = {};
        goods2.goods_id = i;
        //索引数组或多组数据使用js数组,goods是js数组
        goods.push(goods2);
    }
    console.log(goods);
    $.ajax({
        url:'/user/wangzhaobo',
        type:'post',
        data:{
            goods:goods
        },
        success:function(res){
            // console.log(res);
        }
    });
posted @ 2021-02-26 16:32  王召波  阅读(505)  评论(0编辑  收藏  举报