对象
JS中的数据类型:
-- String 字符串类型 ----|
-- Number 数值类型 |
-- Boolean 布尔类型 |---->基本数据类型
-- Null 空值类型 |
-- undefined 未定义 ----|
-- Object 对象 ---->引用数据类型
--基本数据类型都是单一的值,值和值之间没有任何联系。
--如果使用基本数据类型的数据,我们所创建的变量都是独立的,不能称为一个整体。
--对象属于一种复合的数据类型,在对象中可以保存多个数据类型的属性。
注:只要不是上面五种基本数据类型,那么全都是对象。
对象的分类:
1.内建对象:
--由ES标准中定义的对象,在任何的ES实现中都可以使用
--例如:Number Math String Boolean function Object……
2.宿主对象
--由JS的运行环境提供的对象,目前来讲主要是指由浏览器提供的对象
--比如BOM、DOM
3.自定义对象
--由开发人员自己定义的对象
创建对象:
使用new关键字调用的函数,叫做构造函数(constructor)
构造函数是专门用来创建对象的函数。
在对象中保存的值叫属性。
1.添加对象属性:
语法: 对象.属性名=属性值;
2.读取对象属性:
语法: 对象.属性名;
3.修改对象属性值:
语法: 对象.属性名=新值;
4.删除属性:
语法: delete 对象.属性名;
属性名和属性值:
对象中添加属性
1. 属性名:
--对象的属性名不强制要求遵守标识符的规范,但是尽量使用规范去做
- 如果要使用特殊的属性名不能采用 . 链接的方式(例子①),应该使用 [" "] 符号(例子②)。
- 例子①:var 123 = 234; 例子②:var ["123"] = 234;
注:调用的时候也要使用 对象["属性名"] 的方法
使用 [" "] 这种形势去操作属性,更加的灵活
在 [] 中直接传递一个变量,这样变量值是多少就会读取那个属性
obj["123"] = 234;
var n = 123;
console.log(n); = console.log("123");
2. 属性值:
--JS对象的属性值,可以是任意的数据类型,甚至也可以是一个对象
3. in运算符
--通过这个运算符可以检查一个对象中是否含有指定的属性
如果有就返回true,没有则返回false
--语法:
"属性名" in 对象;
例子:检查 obj 中是否含有 test 属性
console.log("test" in obj);
创建一个对象:
var obj = new Object();
使用字面量来创建一个对象:
var obj = {}
使用对象字面量,可以在创建对象时,直接指定对象中的属性
语法:{属性名:属性值,
属性名:属性值
……}
对象字面量的属性名可以加引号也可以不加,建议不加,
如果要使用一些特殊的名字,则必须加引号
var obj = {name:“候儿子‘,
age:20,
sex:男,
" %&*8 ":特殊名字,
}