Javascript JSON.parse 预期的参数问题



JSON.parse 需要文本作为第一个参数,如本页所述:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse。

JSON.parse(['["asd"]'])结果是["asd"].这是一个错误吗?

JSON.parse希望你给它传递一个字符串。

你正在向它传递一个数组。

数组使用其toString方法隐式转换为字符串。

这会将其中的所有值(所有值)平展为单个字符串。

const array = ['["asd"]'];
const string = "" + array;
console.log(string);

发生这种情况是因为类型强制(隐含如我之前所述)和 Array.prototype.toString() 的结果的组合。

最新更新