JavaScript 面向对象之一 —— 对象(对象与JSON的区别)
2017-05-11 00:36
316 查看
本系列文章根据《爱前端邵山欢老师深入浅出的js面向对象》视频整理归纳
JSON 要求所有的键必须加双引号,而 JavaScript 对象不要求双引号。
标准JSON格式:
JavaScript对象:
但是 JavaScript 中有一种键必须加引号,就是不符合标识符命名规范的键,必须加引号,否则报错。如
访问属性时,必须加引号,用方括号表示法:
如果我们用变量存储一个 key,此时 必须用方括号访问,并且 方括号中不能有引号。如:
点语法只能以字符串形式访问对象中的键,无法使用变量访问
对象与JSON的区别
JSON 就是 JavaScript object notation ,JavaScript 对象表示法。是 JavaScript 对象的严格子集。JSON 要求所有的键必须加双引号,而 JavaScript 对象不要求双引号。
标准JSON格式:
var obj = { "name" : "张鑫", "age" : 25, "sex" : "男" }
JavaScript对象:
var obj = { name : "张鑫", age : 25, sex : "男" }
JSON 规定必须加引号的原因
因为 JSON 是一个数据交换格式,作为 HTML 与 PHP、JAVA等后台语言的信息交换媒介。后台工程师从数据库中得到数据,组建 JSON ,前台通过 Ajax 获取 JSON 并解析,组建页面。(所以是其它后台语言在组建 JSON 时要求加引号,否则报错,并非JavaScript要求的。)JSON天生为通信而生。但是 JavaScript 中有一种键必须加引号,就是不符合标识符命名规范的键,必须加引号,否则报错。如
var obj = { "-" : 12, "@@@" : 135, "2017" : 568 }
访问属性时,必须加引号,用方括号表示法:
obj["2017"]
如果我们用变量存储一个 key,此时 必须用方括号访问,并且 方括号中不能有引号。如:
var obj = { "2017" : 1, "key" : 2 } var key = 2015 + 1 + 1; console.log(obj[key]); // 1 console.log(obj["key"]); // 2 console.log(obj.key); // 2
点语法只能以字符串形式访问对象中的键,无法使用变量访问
相关文章推荐
- 什么是JavaScript中的面向对象?与其他编程语言的面向对象有什么区别?什么是原型?
- JavaScript对象字面量(即JavaScript用户自定义对象)与JSON字符串的区别:
- javascript json对象与json格式字符串区别
- 什么是JavaScript中的面向对象? 与其他编程语言的面向对象有什么区别? 什么是原型?
- json和javascript对象区别及小应用
- JavaScript 面向对象(二)对象和 JSON 的区别
- [JavaScript] 对象字面量与JSON的区别
- 浅谈PHP与javascript之JSON XML 数组 对象三者的区别
- javascript json文本与json对象的区别
- Json 与 javascript 对象的区别
- javascript对象和php对象和json区别
- javascript面向对象规则汇总以及json
- JSON与Javascript对象的区别
- 面向对象多态的实现(抽象类Abstract和接口Interface的用法区别)
- (转)JavaScript 面向对象程序设计(上)——封装
- java和c++在面向对象上有什么区别?
- JavaScript 面向对象程序设计(上)--封装
- 基于ECMA 的JavaScript 的面向对象程序设计
- (转)JavaScript 面向对象程序设计(下)——继承与多态
- java和c++在面向对象上有什么区别?