函数不需要 return,因为 json 对象会被函数直接修改。
var str1 = {"name": "apple", "sex": "21"};。
。
// 参数:prop = 属性,val = 值。
function createJson(prop, val) {。
// 如果 val 被忽略。
if(typeof val === "undefined") {。
// 删除属性。
delete str1[prop];。
}
else {
// 添加 或 修改。
str1[prop] = val;。
}
下面为测试
// 无改动,输出 Object {name="apple", sex="21"}。
console.log(str1);。
。
// 添加属性 color,值为 red。
createJson("color", "red");。
。
// 输出 Object {name="apple", sex="21", color="red"}。
console.log(str1);。
。
// 修改属性 name 的值为 banana。
createJson("name", "banana");。
。
// 输出 Object {name="banana", sex="21", color="red"}。
console.log(str1);。
。
// 删除属性 sex
createJson("sex");。
。
// 输出 Object {name="banana", color="red"}。
console.log(str1);。
函数应该有三个参数的,第一个为 json 对象,但应你要求,只写了两个,所以函数只能用于修改 str1。
var JSONObject = {data:[。
{count:335, goods:'直接访问'},。
{count:310, goods:'邮件营销'},。
{count:234, goods:'联盟广告'}。
]};
// 取到data所对应的json数组 。
var JSONArray = JSONObject.data;。
// 声明一个数组,用于存储多个json对象。
var JSONArray2 = [];。
// 声明一个json对象,用于临时存储json数据。
var tempJson = {};。
// 遍历数组
for (var i in JSONArray) {。
// 清空json对象
tempJson = {};。
// 获取key=count所对应的值并添加到一个新的json对象中。
// 新的json对象的key为value。
// 添加json元素(key)并赋值(value)。
tempJson['value'] = JSONArray[i].count; 。
// 将该json对象添加到数组中。
JSONArray2[i] = tempJson;。
// 再次清空json对象
// 获取key=goods所对应的值并添加到一个新的json对象中。
tempJson = {};。
tempJson['name'] = JSONArray[i].goods; 。
JSONArray2[i] = tempJson;。
// 改变JSONObject中key=data的值。
JSONObject.data = JSONArray2;。
先找出那个字段再替换,如:
var obj={'name':'zhang','age':'20'};//json数据,要替换name值中'z'。
var val=obj.name;//获取name的值。
var str=val.replace('z','k');//替换。
obj.name=str;//把新的值赋给name字段。
你的代码也按照这种思路去做就行了。
angularjs读取json中的某个字段的方法是利用json的api实现的。 思路:先把js字符串转化成json结构,然后利用取属性运算符获取各个属性。 1、例如有以下json数据:
$('#ddiv').click(function(){ $.ajax({ type:"GET", url:"json/events.json", dataType:"json", success:function(data){ var music=""; $.each(data,function(i,n){ music+=""+n["name"]+["contact"]+["telephone"]+n["address"]+""; }); musi...。
原文地址:http://www.qianchusai.com/js%E4%BF%AE%E6%94%B9json%E4%B8%AD%E7%9A%84%E5%80%BC.html