您的位置:首页 > Web前端 > JavaScript

JavaScript 面向对象之一 —— 对象(对象与JSON的区别)

2017-05-11 00:36 316 查看
本系列文章根据《爱前端邵山欢老师深入浅出的js面向对象》视频整理归纳

对象与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


点语法只能以字符串形式访问对象中的键,无法使用变量访问
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息