介绍
本文是在学习JS所做的学习笔记,所有笔记内容请看:JS学习笔记
基础用法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
对象属于一种复合得数据类型,在对象中可以保存多个不同得数据类型
属性
对象分类:
1.内建对象
-由ES标准定义的对象,在任何的ES中都可以使用
-比如Math、String Number Boolean Function Objct
2.宿主对象
-由JS的运行环境提供的对象,目前主要为浏览器提供的对象
-比如BOM DOM console document
3.自建对象
-由开发人员自己创建的对象
// 创建对象
使用new关键字调用的函数,是构造函数constructor
构造函数是专门用来创建对象的函数
var obj= new Object();
console.log(typeof obj)//object
向对象中添加添加属性
语法:对象.属性名 = 属性值
obj.name = '孙悟空';
obj.gendr='男';
obj.age=10;
读取对象中属性
语法:对象.属性名
console.log(obj.name)// 孙悟空
console.log(obj.hello) // 读取对象中没有的熟属性,不会报错,
// 会返回undefined
修改对象属性值
语法:对象.属性名 = 新值
obj.name='tom';
console.log(obj.name)// tom
删除对象属性:
语法:delete 对象.属性名
delete obj.name
console.log(obj.name)// undefined
</script>
</head>
<body>
</body>
</html>
对象属性值、属性名
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
var obj =new Object();
向对象中添加属性
- 对象的属性名不强制要求遵守标识符的规范
尽量按照标志符的规范去做
obj.name='孙悟空'
obj.var = 'hell0';
console.log(obj.var)
如果采用特殊的属性名,不能采用.的方式来操作属性
需要使用另一种方式:
语法:对象['属性名'] = 属性值
读取的时候也要采用这种方式
使用[] 方式操作属性,更加灵活
在中括号中可以直接传递一个变量,这样变量值是多少就会读取那个属性
obj['123'] = 789
console.log(obj['123'])// 789
var n="123";
console.log(obj[n])// 789
属性值
JS对象的属性值,可以是任意的数据类型
甚至也可以是一个对象
obj.test = "hello"
obj.test = null
obj.test = undefined
obj.test = true
var obj2= new Object();
obj2.name="猪八戒"
obj.test=obj2 //将属性设置为对象
console.log(obj.test.name)// '猪八戒'
in运算符
-通过该运算符可以检查一个对象中是否包含指定的属性
如果有就返回true,没有则返回false
-语法:
'属性名' in 对象
//检查obj中是否含有test2属性
console.log('test2' in obj)
</script>
</head>
<body>
</body>
</html>