js怎样生成json的数据?

JavaScript013

js怎样生成json的数据?,第1张

1、按照描述,题主是想将多条数据记录提交到服务端,同时服务端将数据插入到数据库。那么思路是将多条数据存在数组中,调用post方法的接口传入后端。

2、方法如下:

var sendData = []

sendData.push({name:'david',age:'20'})

sendData.push({name:'peter',age:'23'})

3、传递数据给服务端,一般使用post方法调用接口,使用jquery,代码如下:

$.post("接口路径",sendData,function(result){

console.log(result,'发送结果')

})

扩展资料:

1、json与字符串互相转换:

JSON.parse('{"name":"karla"}')//将字符串转换为json

JSON.stringify({name:'karla'})//将json转化为字符串

2、jquery中post与get的区别:

1) $.get() 方法使用GET方法来进行异步请求的。$.post() 方法使用POST方法来 进行异步请求的。

2)get请求会将参数跟在URL后进行传递,而POST请求则是作为HTTP消息的实体     内容发送给Web服务器的,这种传递是对用户不可见的。

3) get方式传输的数据大小不能超过2KB 而POST要大的多。

4)GET 方式请求的数据会被浏览器缓存起来,因此有安全问题。

参考资料:百度百科-json

你数据都是现成的 直接创建一个就好了

你如果要把arrYearPay转为{yearPay:100},{yearPay:200}这样键名都一样的对象,还不如直接post数组到后台,反正没有key可辨识,直接通过数组索引判断就是了

给你粗略写个demo

var code = "A123"

var rate = 100

var arrYearPay = [100,200,300]

var data = {

    code: code,

    rate: rate,

    yearPay: arrYearPay

}

var url = './demo.php' //你post地址

$.post(url, data, function (e) {

    alert(e)

})

后台php代码

<?php

$code= $_POST["code"]

$rate= $_POST["rate"]

$yearPay = $_POST["yearPay"] //这个就是数组对象了

$sum = 0 

foreach($yearPay  as $year){

    $sum  += $year * $rate   //这个我随便写的啊 改成你自己的公式了

}

echo $sum

?>

使用JSON.stringify 函数,将对象转换为JSON文本。

目前,Firefox、Opera、IE8以上版本也提供了本地JSON支持。其中,JSON解释器提供的函数有:JSON.parse、JSON.stringify。

对于那些并不提供本地JSON支持的浏览器可以引入脚本json2.js,来实现JSON转换功能。json2.js脚本可到https://github.com/douglascrockford/JSON-js/blob/master/json2.js页面下载。

函数说明:

JSON.stringify(value[, replacer[, space]])

参数

text

必选项。要转换为JSON文本的对象。

reviver

可选项。该参数是个替换函数。在转换中,遍历的每个节点,都将执行该函数,该函数的返回值将替代转换结果的相应节点值。

space

可选项。格式化输出JSON文本缩进的空格数量。如果不提供该参数将不会格式化输出。

参数reviver的委托类型

reviver(key, value)

reviver函数的中的this是当前所遍历到的节点的父节点。当所遍历的是根节点的时候,父节点是个Object对象,根节点是该对象的一个属性,属性名是空字符串。

参数

key

当父节点是数组Object,key为数组索引,否则key为Object属性名。

value

节点值。

注:JSON不支持循环数据结构。