jquery不能修改json数据中键的名称,可以添加和删除键名。可以通过删除原来的键名并添加仔歼新的键名来实现键名的修改,举一个例子如下所示:
//新建一个json对象
var j={
"name":"sea",
"age":30
}
//打印j
console.log(j)
//先获得要修改键的值扮戚迅,避免丢失。
var temp=j.name
delete(j.name)
console.log(j)
//再定义新的键和值
j.nick=temp
console.log(j)
如上所示就可以成功修改键名了。
扩展资料:
JSON 键/值对
SON 键值对厅此是用来保存 JS 对象的一种方式,和 JS 对象的写法也大同小异,键/值对组合中的键名写在前面并用双引号 "" 包裹,使用冒号 : 分隔,然后紧接着值:{"firstName": "Json"}
这很容易理解,等价于这条 JavaScript 语句: {firstName : "Json"}
参考资料来源:百度百科-JSON
函数不需要 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 count=0for(var i in defaults.buttons){
迟饥 //i即属性名字ok,close
count++
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)