3

我知道有 parseInt、parseFloat 和其他解决方法来从 javascript 中的字符串解析布尔值和数组。

当您将对象字符串用于 JSON 解析器并且结果是具有类型转换值的对象时,我需要的是具有类似行为的方法。

这是我想要的:

parseToPrimitive("a string") => "a string"
parseToPrimitive("1") => 1
parseToPrimitive("true") => true
parseToPrimitive("[1, 2, 3]") => [1, 2, 3]

这个或任何库的任何本机解决方案?

4

1 回答 1

8

这应该工作

function parseToPrimitive(value) {
    try {
        return JSON.parse(value);
    }
    catch(e){
        return value.toString();
    }
}
于 2013-07-09T19:14:20.193 回答