简体   繁体   English

在Javascript中将字符串解析为原始值

[英]Parse a string into primitive values in Javascript

I know there is parseInt, parseFloat, and other workarounds to parse Booleans and Arrays from a String in javascript. 我知道有parseInt,parseFloat和其他解决方法来解析javascript中的字符串中的布尔值和数组。

What I would need is a method with similar behavior when you use a Object string to JSON parser and the result is a Object with type converted values. 当我将一个Object字符串用于JSON解析器并且结果是一个具有类型转换值的Object时,我需要的是一个具有类似行为的方法。

Here is what I want: 这就是我想要的:

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

Any native solution for this or any library? 这个或任何图书馆的任何原生解决方案?

This should work 这应该工作

function parseToPrimitive(value) {
    try {
        return JSON.parse(value);
    }
    catch(e){
        return value.toString();
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM