Welcome 微信登录

首页 / 脚本样式 / JavaScript / json属性名为什么要双引号(个人猜测)

原因一:
更加规范,利于解析
原因二:
避免class等关键字引起的不兼容问题
原因三:
可能也是最隐晦的:
var a = 00; var b = {00: 12}; a in b; --> truevar a = 0; var b = {"00": 12}; a in b; --> false
个人猜测如果js对象的属性名为非string类型,会先进行类型转换, 但是这个过程中可能会出现非预期性的值,虽然仅属个例,但养成一个好习惯还是很有必要的