json属性名为什么要双引号(个人猜测)

前端之家收集整理的这篇文章主要介绍了json属性名为什么要双引号(个人猜测)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

原因一:

更加规范,利于解析

原因二:

避免class等关键字引起的不兼容问题

原因三:

可能也是最隐晦的:

var a = 00; var b = {00: 12}; a in b; --> true
var a = 0; var b = {'00': 12}; a in b; --> false

个人猜测如果js对象的属性名为非string类型,会先进行类型转换,但是这个过程中可能会出现非预期性的值,虽然仅属个例,但养成一个好习惯还是很有必要的

猜你在找的Web前端相关文章