js---对象
对象属于一种复合的数据类型,在对象中可以保存多个不同数据类型的属性
对象的类型:
1.内建对象:由ES标准中定义的对象,在任何的ES的实现中都可以使用
2.宿主对象:由JS的运行环境提供的对象,目前来讲主要指由浏览器提供的对象(如:BOM、DOM)
3.自定义对象:由开发人员自己创建的对象
var obj= new Object()
删除对象中的属性
delete obj.name
对象的属性名
对象的属性名不强制要求遵循标识符的规范
如果要使用特殊的属性名,不能采用.的方式来操作
需要使用另一种方式:
语法:对象[ " 属性名 " ]=属性值
读取时也需要采用这种方式
in 运算符
通过该运算符可以检查一个对象中是否含有指定的属性
如果有则返回true,无则返回false
语法: "属性名" in 对象
数据类型的存储
js中的变量都是保存到栈内存中的
基本数据类型的值直接在栈内存中存储,
值与值之间是独立存在,修改一个变量不会影响其他的变量
对象是保存到堆内存中的,每创建一个新的对象,就会在堆内存中开辟一个新的空间
而变量保存的是对象的内存地址(对象的引用),如果两个变量保存的是同一个对象引用,
当其中一个通过一个变量修改属性时,另一个也会受到影响
但是当其中一个修改为null后相当于失去存储的地址,对另一个不会产生影响
当比较两个基本数据类型的值时,就是比较值
当比较两个引用数据类型时,它是比较对象的内存地址
如果两个对象是一模一样的,但是地址不同,它也会返回false
浙公网安备 33010602011771号