js中如何向json数组添加元素

比如现在有一条var jsonstr=“ [{'name':'a','value':1},{'name':'b','value':2}] ”;
然后将其变成json格式的 var json=eval('('+jsonstr+')');
现在我想直接对这个json数组进行操作向其中添加元素,有没有快捷的方法,还是说必须对上面的字符串进行操作再转成json对象

比如现在有一个json对象为jsonObj,需要给这个对象添加新的属性newParam,同时给newParam赋值为pre。做法如下:

var jsonObj={

'param1':22,

'param2' :33

};

jsonObj. newParam ='pre';

新的属性添加以后,json对象变成:

var jsonObj={

'param1':22,

'param2' :33,

'newParam':'pre'

};

扩展资料:

json数据格式:主要由对象 { } 和数组 [ ] 组成:

其中对象包括键值对(属性:属性值){key: value},value 可为 str,num,list,obj。取值使用 objcet.key。

{key: value, key2:value2,} 键:值用冒号分开,对间用,连接。

数组包含元素:num,str,list,objcet 都可以,利用索引访问 [index],用 . 连接各个值。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2019-10-02

如果想对json数组进行操作向其中添加元素,将其转化为数组对象。

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。 

在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。

为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。

扩展资料:

JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。

JSON是Douglas Crockford在2001年开始推广使用的数据格式,在2005年-2006年正式成为主流的数据格式,雅虎和谷歌就在那时候开始广泛地使用JSON格式。

在 JS 语言中,一切都是对象。因此,任何支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组等。但是对象和数组是比较特殊且常用的两种类型。

对象:对象在 JS 中是使用花括号包裹 {} 起来的内容,数据结构为 {key1:value1, key2:value2, ...} 的键值对结构。在面向对象的语言中,key 为对象的属性,value 为对应的值。键名可以使用整数和字符串来表示。值的类型可以是任意类型。

数组:数组在 JS 中是方括号 [] 包裹起来的内容,数据结构为 ["java", "javascript", "vb", ...] 的索引结构。在 JS 中,数组是一种比较特殊的数据类型,它也可以像对象那样使用键值对,但还是索引使用得多。同样,值的类型可以是任意类型。

参考资料来源:百度百科:JSON

本回答被网友采纳
第2个回答  推荐于2019-09-18

如果想对json数组进行操作向其中添加元素,将其转化为数组对象。

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。 

在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。

为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。

本回答被网友采纳
第3个回答  推荐于2017-10-05

json 数组也是数组 

//1、
var jsonstr="[{'name':'a','value':1},{'name':'b','value':2}]";
var jsonarray = eval('('+jsonstr+')');
 
var arr  =
     {
         "name" : $('#names').val(),
         "value" : $('#values').val()
     }
jsonarray.push(arr);

//2、
var json={};// 定义一个json对象
 json.array1=["2","4"];// 增加一个新属性,此属性是数组
 json.array1[json.array1.length]='6';// 数组追加一个元素
 alert(json.array1)

第4个回答  推荐于2017-10-01
json 数组也是数组 
var jsonstr="[{'name':'a','value':1},{'name':'b','value':2}]";
var jsonarray = eval('('+jsonstr+')');

var arr  =
 {
 "name" : $('#names').val(),
 "value" : $('#values').val()
 }
jsonarray.push(arr);

本回答被提问者和网友采纳

js中如何向json数组添加元素
比如现在有一个json对象为jsonObj,需要给这个对象添加新的属性newParam,同时给newParam赋值为pre。做法如下:var jsonObj={ 'param1':22,'param2' :33 };jsonObj. newParam ='pre';新的属性添加以后,json对象变成:var jsonObj={ 'param1':22,'param2' :33,'newParam':'pre'};...

js怎么给循环给json数组追加元素,json数组初始为空
1、首先,打开html编辑器,新建html文件,例如:index.html。2、以追加name元素为例,在index.html的标签中,输入js代码:var names = ['Alice', 'Bob'];var json = [];for (var i = 0; i < names.length; i++) { json[i] = {'name' : names[i]};} document.body.innerText = ...

js后台接口返回一个空的数组如何向数组中添加字段?
如果你那个空数组是json的话,直接用 数组名.push(xxxx)就可以向数组中添加元素。

js如何使用for循环往json添加数据?
=并不会把上一条覆盖,因为arr[i].name并不一样,相当于给json动态添加不同的属性。结果如下 当然,如果你数组中的那么如果会一样的话,那么就会被覆盖掉。如果是想要往一个新的对象上加,当作它的属性,那么属性名肯定是唯一的。如果你只是单纯的先把数组变成json串的话,可以使用JSON.stringify()...

js数组如何添加json数据及js数组与json的区别_javascript技巧_百度...
1. js数组如何添加json数据 在JavaScript中,可以使用push()方法向数组中添加JSON数据。例如:```let arr = [];arr.push({name: "Tom", age: 20});arr.push({name: "Jerry", age: 22});console.log(arr);```输出结果为:```[{"name":"Tom","age":20},{"name":"Jerry","age"...

JS 怎样将json格式数据写入数组
= { "name" : $('#names').val(),"value" : $('#values').val()} jsonarray.push(arr);\/\/2、var json={};\/\/ 定义一个json对象 json.array1=["2","4"];\/\/ 增加一个新属性,此属性是数组 json.array1[json.array1.length]='6';\/\/ 数组追加一个元素 alert(json.array1)

前台js 取json 对象数组数据
1、先定义一个json变量。2、然后定义这个变量的值,其实一个json对象就是一个obj对象。3、要添加json对象的元素,直接使用数组下标方式,添加键和值就行了。4、要为json对象添加对象,我们可以先创建一个对象。5、然后也是使用数组下标方式,为其赋值为新的对象变量就行了。6、在浏览器里,我们就可以...

怎样使用JS实现json对象数组按对象属性排序
按照id小的json到id大的json顺序重新排列数组的顺序在js中添加排序的方法:这里使用JavaScript sort() 方法,首先解释下这个sort的方法语法:arrayObject.sort(sortby)sortby:可选,规定排序顺序。必须是函数。如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照...

js怎么循环出变量,然后一个个储存到数组中?
1、下面输出结果是"jim",而不是"tom",是因为数组中保存的都是指向json对象a的地址,dd[0],dd[1],dd[2],dd[3]对象指向的内存地址相同,当修改其中一个dd[0]的属性值的时候,数组所有元素指向的对象属性值都改变了。var dd = [];var a = { "cname": "tom" };for (var i = 0; ...

js中获取到两个json类型的数据,现在要把第二个json类型中的数据全部追...
json1 : {a:1,b:"我是字符串",c:true} json2 : {a:2,b:"我是字符串2",c:false} 这个如果相加没办法 --- json1 : {a:1,b:"我是字符串",c:true} json2 : {d:2,e:"我是字符串2",f:false} 键不相同就可以 var o2 = {};var i,o;for (i in json1) { ...

相似回答