作用

json通常用于与服务端交换数据
在向服务器发送数据时,一般是字符串
我们可以使用 JSON.stringify() 方法将 JavaScript 对象转换为字符串。

语法

方法定义:JSON.stringify(value, replacer, space)

参数说明:
value:js对象
replacer:替换对象,可以是一个方法、对象或数组,将value按照替换规则展示。
space:填充参数,可以是数字或字符串,将value按照参数进行格式化展示。

方法说明:将value对象转换为指定格式的json文本

使用实例

  var data = checkStatus.data;//获取表格选中的数据
     console.log(data); //打印两种数据做对比
     console.log(JSON.stringify(data));//打印两种数据做对比
    $.ajax({
            'url':'{:Url("AddCard/AgainCard")}',
                'data':JSON.stringify(data),
                'success':function(data){
                    if (data.code === 1) {
                        layer.alert(data.msg,{
                            title: '成功'
                        },function () {
                            layer.closeAll();
                            //执行重载
                            table.reload('test-table-page', {
                            });
                        });
                    } else {
                        layer.alert(data.msg,{
                            title: '失败'
                        },function () {
                            layer.closeAll();
                            //执行重载
                            table.reload('test-table-page', {
                            });
                        });
                    }
                },
                'dataType':'json',//返回的格式
                'type':'post',//发送的格式
            });
  

如代码所示:
ajax递交后,console.log打印出来的数据,一个为对象,一个为json数据,如图:
在这里插入图片描述

后端接受到的数据格式

‘data’:JSON.stringify(data),上传后的数据

 $data = $this->request->getInput();
 dump($data);exit;
 打印出来的数据:
 string(214) "[{"iccid":"1123000002","operatorName":"中国移动","operatorCity":"东莞","packageType":"年卡","storageTime":"2021-11-23 09:12:05","openCardDate":"2021-11-23 00:00:00"}]"

‘data’:data,上传后端打印出的数据

$data = $this->request->getInput();
dump($data);exit;
 打印出来的数据:
string(10) "undefined="

对象数据没有上传到后端

补充

后端接受到json数据后,一般都不能直接处理,需要用json_decode转换为数组,方便curd操作。
举例:

$data = $this->request->getInput();
$json_data = json_decode($data, true);
  dump($data);
  dump($json_data);
  exit();

打印出来的结果

在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐