请问:用JS创建json数据,并且可以动态往json数据里面添加新值,也可以修改值。

请问:用JS创建json数据,并且可以动态往json数据里面添加新值,也可以修改值。,第1张

函数不需要 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。

json追加内容并且修改和删除 *** 作示例:

1、增加:

myObj.user='我是新增的用户-小明'

x +="<h1>增加后的数据</h1>"forin()

2、修改:

myObj.name= "我的网站"

x +="<h1>修改后的数据</h1>"forin()

3、删除:

delete myObj.sites

x +="<h1>删除后的数据</h1>"forin()

扩展资料

JS动态动态创建JSON数据字符串,并且可以删除添加修改

<script type="text/javascript">

//添加或者修改json数据

function setJson(jsonStr,name,value)

{

if(!jsonStr)jsonStr="{}"

var jsonObj = JSON.parse(jsonStr)

jsonObj[name] = value

return JSON.stringify(jsonObj)

}

//删除数据

function deleteJson(jsonStr,name)

{

if(!jsonStr)return null

var jsonObj = JSON.parse(jsonStr)

delete jsonObj[name]

return JSON.stringify(jsonObj)

}

//生成测试

var myjsonStr = setJson(null,"name","aaa")

alert(myjsonStr)

//添加测试

myjsonStr = setJson(myjsonStr,"age",18)

alert(myjsonStr)

//修改测试

myjsonStr = setJson(myjsonStr,"age",20)

alert(myjsonStr)

//删除测试

myjsonStr = deleteJson(myjsonStr,"age")

alert(myjsonStr)

</script>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11638423.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存