请问:用JS创建json数据,并且可以动态往json数据里面添加新值,也可以修改值。假设json数据字符串格式如下所示: var str1 = '{ "name": "apple", "sex": "21" }';
要求:1、JS可以动态创建json数据,比如传入 name 和apple ,自动返回json格式字符串。2、假设传入name已经存在,则替换name的值,然后返回json数据字符串3、可以移除键,比如数据name ,就可以把name的键值从json中移除
要求写一个js函数,传入两个参数比如function createJson(str1,str2){ return json }
求解!~
要求:1、JS可以动态创建json数据,比如传入 name 和apple ,自动返回json格式字符串。2、假设传入name已经存在,则替换name的值,然后返回json数据字符串3、可以移除键,比如数据name ,就可以把name的键值从json中移除
要求写一个js函数,传入两个参数比如function createJson(str1,str2){ return json }
求解!~
//添加或者修改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>