JavaScript 对象
变量只能保存单一的数据,比如 姓名,年龄,性别 等,如果将一个人的多个相关信息存储在一个变量,则需要使用对象。
//将有关联的数据存储在多个变量里
var name = '章子怡';
var height = 163.5;
var age = 34;
var gender = '女';
var isHealth = true;
//person的数据类型是对象,将多个数据存储在一个变量
var person = {
name:'章子怡',
age:34,
gender:'女'
isHealth:true
};
对象是一个复合型的数据类型,它将多个相关联的数据值集中在一个单元中,而且与许使用名字来访问。
如上对
person对象定义
的例子://上面说的name,height,age,gender,isHealth都是person的属性 person.name = '章子怡'; person.height = 163.5; person.age = 34; person.gender = '女'; person.isHealth = true;
创建 JavaScript 对象
使用new关键字自定义对象
var person_zzy=new Object();
person_zzy.name="章子怡";
person_zzy.height=163.5;
person_zzy.age=34;
person_zzy.gender="女";
person_zzy.isHealth=true;
也可以直接写成下面这种形式
var person_zzy={
name:"章子怡",
sex:"女",
age:34,
height:163.5,
isHealth:true
};
用.
语法 访问对象的数据
访问对象属性的语法是:
objectName.propertyName
这个例子使用了 person_zz
对象的 age
属性来获得该person的年龄:
var x=person_zzy.age;
在以上代码执行后,x 的值将是:
34
JSON
- JSON:JavaScript 对象表示法(JavaScript Object Notation)
- JSON 是存储和交换文本信息的语法
- JSON可以简化对象的创建方式
JSON的定义
- 数据在名称/值对中,格式为
名称:值
,例如:"name":"章子怡"
- 数据由逗号分隔
- 花括号保存对象
- JSON值可以是 数字、字符串、数组、对象
这个 classmate对象是包含 3 个同学记录(对象)的数组。
{
"classmate": [
{ "Name":"章子怡" , "sex":"女" },
{ "Name":"赵薇" , "sex":"女" },
{ "Name":"陈坤" , "sex":"男" }
]
}
null
null表示一个空对象,“什么都没有”的意思,用来表示“无值(no value)”
通常用作一个空引用一个空对象的预期,就像一个占位符。
// var obj = null; alert(typeof(obj)); //"object" alert(obj == null); //true var person = {}; alert(person == null); //false
可以通过将变量的值设置为 null 来清空变量。
var school = '火星时代'; alert(school); school = null; alert(school);
null的数据类型是object
alert(typeof(null));
小结
Javascript 中 null,NaN和undefined的区别?
- undefined:“没有定义”,声明了一个变量却没赋值时会返回undefined
typeof(undefined); //结果为 undefined
null: “什么都没有”,空对象引用,它是javascript原始值之一
null === undefined // false null == undefined // true (==会强制转换类型)
NaN: "不是一个数",not a number,表示某个值不是数字。算数运算符与不是数字或无法转换为数字的操作数一起使用,或者字符串无法解析成数字时,会返回NaN
typeof(NaN); //结果为Number var a = "thank you" * 3; //a值为NaN NaN === NaN; //false //NaN不等于任何值,连它本身也不等于。