关于JSON.parse解析的笔记,参数为数字,数组等

先看一个图

本来以为JSON.parse只能接收字符串作为参数,实际上却不一定。

再看MDN上对于这个方法的描述

 翻译下

貌似的确是要求为字符串,但是构造字符串描述的javaScript值或对象这句话说明还可以解析javaScript值,那么真相是?

推测JSON.parse会对入参做类型转换,如果是javascript的基本数据类型number,string,boolean或者Array,会自动调用toString方法转成字符串再解析。

因此JSON.parse(10),分为2步,首先会做类型转换,调用toSting()方法转成 ‘10’,再解析为JavaScript值数值10。其他以此类推。

null没有toString方法,是特别的。

原文地址:https://www.cnblogs.com/scdisplay/p/15401486.html