JSON.stringify()方法的原生JS实现

JavaScript010

JSON.stringify()方法的原生JS实现,第1张

通过递归调用,来实现对转换对象Object的深层value进行遍历。

利用array的join方法实现最终的字符串拼接。

可直接在浏览器运行如下代码

运行结果

本文的JSON.stringify()方法的原生JS实现属于对javascript灵活应用的基本功。

实现思路来自于笔者平日的工作与思考的总结。

希望大家都能掌握以便在面试中脱颖而出。

有需要前端学习资料的同学可以私行我“学习”,获取学习资料一起交流学习

如果要使用js读取json文件,那么ajax操作是必须的了。原生ajax有点麻烦,我想你们项目一定用了什么js库,这里给个jquery的例子:

$.get('xx.json路径', function(data){

alert(data)// data即为json文件内容里的json数据

}, 'json')如果把这个文件的内容读取为纯文本,可以修改$.get的最后一个参数json为text,或者删掉这个参数,默认也是text。

js调用json?好抽象的说法,

我按照我的理解写点东西吧,希望对你有点用处,

var question = {

"questions1":[{"number":"1","subject":"choose one bus","answer":"bus1"},

{"number":"2","subject":"get one pen","answer":"pen1"},

{"number":"3","subject":"take one apple","answer":"apple1"}

],

"questions2":[{"number":"5","subject":"have one cake","answer":"cake1"},

{"number":"6","subject":"yes or no","answer":"yes"},

{"number":"7","subject":"understand one or two","answer":"two"}

],

}上面这些就是一个js的json变量声明,js取上面json的值的方式如下

question.questions1[1].number的值是2,取值对应是question代表json变量名,questions1[1]表示上面json中第一个数组questions1的第二个值 {"number":"2","subject":"get one pen","answer":"pen1"},

number就是取其中的number的值,可以看到值是2。以上就是js中对json变量中的取值形式是如何的,修改某个地方的值直接用赋值方式如question.questions2[0].number = 11,就会把上面的json中的questions2中的第一排number为5的值改为11