千家信息网

JavaScript中的JSON.parse()怎么用

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,小编给大家分享一下JavaScript中的JSON.parse()怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!JavaScript中 JSON.parse() 使用特性在解析
千家信息网最后更新 2026年11月02日JavaScript中的JSON.parse()怎么用

小编给大家分享一下JavaScript中的JSON.parse()怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

JavaScript中 JSON.parse() 使用特性

在解析JSON字符串的时候,需要注意到JSON格式的一些规范,不然就容易报错。

JSON数据对值的类型和格式,都有严格的规定,具体的规则如下:

该方法使用字符串类型JSON格式数据。

该方法也支持数字、布尔值和null三个类型的值,转换出对应的字面值。

不支持其他类型。

JSON.parse('"中国"')

// '中国'

JSON.parse(null) // null

JSON.parse(111.) // 111

JSON.parse(0x12) // 18

JSON.parse(true) // true

JSON.parse([])

// Uncaught SyntaxError: Unexpected end of JSON input

字符串必须使用双引号,不能使用单引号。

JSON.parse('"String"')

// 'String'

JSON.parse('\'String\'')

// Uncaught SyntaxError: Unexpected token ' in JSON at position 0

只支持十进制的字符串,但小数点后必须跟上数字。

JSON.parse('111') // 111

JSON.parse('0x12')

// Uncaught SyntaxError: Unexpected token x in JSON at position 1

JSON.parse('111.232') // 111.232

JSON.parse('111.')

// Uncaught SyntaxError: Unexpected end of JSON input

不能使用undefined、Symbol和BigInt,数字也不支持NaN、Infinity和-Infinity,都会报错。

JSON.parse(undefined)

// Uncaught SyntaxError: Unexpected token u in JSON at position 0

JSON.parse(Symbol())

// Uncaught TypeError: Cannot convert a Symbol value to a string

JSON.parse('12n')

// Uncaught SyntaxError: Unexpected token n in JSON at position 2

复合类型,只能是:[] 和 {} 这样的字面量。

不能使用对象构造函数,因为会当作执行语句,不支持。

不能使用Object和Array,也不能是函数、RegExp对象、Date对象、Error对象等。

JSON.parse('[]')

// []

JSON.parse('Object()')

// Uncaught SyntaxError: Unexpected token O in JSON at position 0

对象的属性名必须使用双引号。

JSON.parse('{"key": 1 }')

// {key: 1}

JSON.parse('{key: 1 }')

// Uncaught SyntaxError: Unexpected token k in JSON at position 1

数组或对象最后一个成员的后面,不能加逗号。

JSON.parse('[1, 2, 3, 4, ]')

// VM2771:1 Uncaught SyntaxError: Unexpected token ] in JSON at position 13

JSON.parse('{"key" : 1, }')

// VM2779:1 Uncaught SyntaxError: Unexpected token } in JSON at position 12

支持unicode转义。

JSON.parse('{"\u0066":333}')

// {f: 333}

部分控制字符、转义字符不支持,如'\n'、'\t'等。

JSON.parse('"\n"')

// Uncaught SyntaxError: Unexpected token

解析的其他方法

将json字符串转成json对象(js对象值),还可以使用其他方法,但是非安全代码。

const str = '{"name":"json","age":18}'

const json = JSON.parse(str)

const json = eval("(" + str + ")")

const json = (new Function("return " + str))()

看完了这篇文章,相信你对"JavaScript中的JSON.parse()怎么用"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

对象 字符 支持 字符串 类型 方法 引号 数字 格式 函数 数据 篇文章 转义 中国 安全 三个 代码 十进制 字面 完了 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技有限公司 广州万易互联网科技有限公司 互联网科技工作委员会主任 互联网最新的科技 互联网科技公司税收优惠 腾讯阿里互联网科技 湖南洣水互联网科技有限公司扣款 北京三清互联网科技 现代互联网科技股 湖南诚度互联网科技有限公司 华夏互联网科技业 浙南科技城互联网大厦建设工程 互联网公司黑科技创始人 世界互联网领先科技成果获奖 城市宝互联网科技有限公司 互联网科技数字货币 半导体是互联网高科技吗 长沙渺峰互联网科技有限公司 互联网科技对化妆品行业 亚光科技低轨卫星互联网 深圳市人人互联网科技有限公司 互联网是第几次科技革命的成果 科技赋能下的互联网金融 科技互联网技术 互联网 科技馆 济南华为互联网科技产业总部基地 央行互联网金融科技公司 高科技互联网发展前景如何 北京天晋互联网科技有限公司 互联网科技创业计划的风险分析
0