一.对象的定义:
01.即一个数据的集合(复杂数据,亦可成为引用数据类型); 02.其引用数据类型涵盖有数组,函数,对象,array,function,object; 二.对象的命名方式: 例:
var obj ={
name: 'zdf',
age:27
}
例子解析:在这个对象中,{}内为对象存储数据,存储的为键值对,即属性名:属性值,属性名:属性值...( : 号左边为键名, : 号右边是键值)以此往复.
==!!!注意: 对象{ }内部的数据大多数为基本数据类型,区别于if/for/函数语句,例如: if () { 分支语句的代码 }... for () { 循环体 }... function () { 函数体 }...==
二.创建对象 01.字面量形式
var obj = {
name: 'QF',
age: 18
}
console.log(obj)
02.通过内置构造函数
var obj1 = new Object()
!注意02,在这里创造的是一个空函数,且通过内置构造函数创建的对象,其对象名称首字母应大写,如果名称长,须使用驼峰命名法;
三.关于对象对于{}内变量key的要求如下: 01.推荐使用符合变量命名规范和规则来命名; 02.可使用数字作为key变量 03.可以使用特殊符号 例:
var obj = {
name:'QF',
bigbox:'HHHH',
123:'112233',
'@':'特殊符号1',
'#':'特殊符号2'
}
!!!注意:123,@,#这些为特殊符号
四.对象的基本操作(增删改查) 01.主要使用点羽凡及中括号语法(又称数组语法) 02.点语法
var obj{
age:18
}
2.1 查 console.log(obj.age);
2.2 改 obj.age=25; console.log(obj);
2.3 增 obj.name='zhangsan'; console.log(obj);
2.4 删除 delete obj.name; console.log(obj);
03.[]语法
var obj{
age:18
}
3.1 查 console.log(obj['age']);
3.2 改 obj['age']=25; console.log(obj);
3.3 增 obj['name']='zhangsan'; console.log(obj);
3.4 删除 delete obj['name']; console.log(obj);
五.点语法及[]语法的区别
-
如何选择两种方式?
a. 对象的key符合命名规范;
b. 出现纯数字为key或者特殊符号@,#等我们需要使用中括号语法来解析这些变量;
c. 当出现变量的时候(想用变量作为key) 也需要使用中括号语法;
2.例子:
var obj = {
123: '112233',
'@': '我是特殊符号@'
}
console.log(obj);
例子解析:在这道题中,如果对于变量名称为数字及特殊符号时,使用点语法不被支持,即报错,针对纯数字,即特殊符号,需要利用[]语法来解析这些变量;
六.对象的遍历 1.所谓对象的遍历,目的就是拿到对象中的数据,即所有的键值对,现学习阶段,可使用for...in来遍历 语法:
var obj = {
name: 'QF',
a: 123,
b: 456,
c: 789
}
for(var key in obj){
console.log(key,obj[key])
}
通过这样输出,可在控制台中查看,在对象中存储的键名及键值;