JavaScript对象总结

JavaScript对象总结

开发工具与关键技术:Adobe Dreamweaver JavaScript
作者:陈开冠
撰写时间:2020年4月22日

①对象属于一种复合的数据类型,在对象中可以存储多个不同数据类型的属性
对象的分类:
1.内建对象
- 由ES标准中定义的对象,在任何ES的实现中都可以使用
例如:Math String Number Boolean Function Object …
字符 数值 布尔值
2.宿主对象
- 由JS的运行环境提供的对象,目前来讲主要指由浏览器提供的对象
- 比如:BOM(浏览器对象模型) DOM(文档对象模型)
例如 我们常用的console.log() 就是DOM 中的对象
3.自定义对象
- 由咱们开发人员自己定义的对象

②使用new关键字调用的函数,是构造函数constructor
构造函数是专门用来创建对象的函数
var obj=new Object(); //创建对象

在对象中保存的值称为属性:
向对象添加属性的语法: ①对象.属性名=属性值 ② 对象[“属性名”]=属性值
读取对象属性的语法: ①对象.属性名 ②对象[“属性名”]

  • 注意:如果对象中没有的属性,不会报错而是返回undefined
    重要!!!对象的属性值可以是任意的数据类型
    为对象添加属性:
    obj.name=“zhangsan”;
    obj.age=18;
    obj.tel=“13894558732”;

获取对象中的属性值
console.log(obj.tel); //输出为 13894558732
console.log(obj.adress); //输出为 undefined(未定义)
console.log(obj[“name”]); //输出为 zhangsan
修改对象的属性值
Obj.age=22;
删除对象的属性值
delete obj.tel;
console.log(obj); //输出为name:“zhangsan”,age:”22”;

③属性名:
对象的属性名不强制要求遵守标识符规则
什么名称都可以,但是不允许这里使用,我们自己定义的使用都必须遵守标识符规则。
var worker=new Object();
worker.name=“小明”;
worker.age=23;
worker.adress=“九王庙兴业路八号”;
console.log(worker); //输出为name: “小明”,age: 23, adress: “九王庙兴业路八号”
console.log(worker.age); //输出为23
console.log(worker.adress); //输出为 九王庙兴业路八号

var boss=new Object();
boss.name="马云";
boss.age=40;
boss.staff=worker; 
console.log(boss);   //输出为 name:”马云”,age:”40”;staff:{name: "小明",age: 23, adress: "九王庙兴业路八号"}
console.log(boss.name);   //输出为  马云
console.log(boss.staff.name);  //输出为 小明

in运算符
通过该运算符检查一个对象中是否含有指定的属性
如果含有则返回true,如果没有则返回false
语法 :“属性名” in 对象

列如:
console.log(“adress” in boss); //输出为falise;

④JavaScript对象字面量
1.创建一个对象
var obj=new Object();
2.使用对象字面量来创建一个对象
var obj={};
列如:
var obj={};
console.log(typeof obj);

⑤ 使用对象字面量,可以在创建对象时,直接指定对象中的属性
语法:{属性名1:属性值1,属性名2:属性值2,…}
对象字面量的属性名可以加引号,也可以不加,建议不加
如果要使用一些特殊的属性名,则必须加上引号

属性名与属性值是一组键值对结构,
键与值之间用":"冒号连接,对个键值对之间使用","逗号隔开
如果一个属性之后没有其他的属性了,就不要写","逗号

列如:
obj={
name:“zhangdan”,
age:23,
adress:“九王庙兴业路8号”,
“123”:“helloworld”
};
console.log(obj[“123”]); //输出为 helloworld
console.log(obj.name); //输出为 zhangsan

var boss={
	name:"马云",
	age:40,
	emp:{
		name:"小王",
		age:23,
		tel:"13509667867"
	}
};
console.log(boss.emp.tel);  //输出为   13509667867
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值