JS对象(2)

对象属性名和属性值

属性名

  1. 向对象中添加属性
     向对象中添加属性
    属性名:
     对象的属性名不强制要求遵守标识符的规范
     使用[]这种形式去操作属性,更加灵活
     在[]中可以直接传递变量,这样变量值是多少就会读取那个属性
var obj = new Object();
	obj.name = "名称";
	obj.var = "乱码"
	// 如果要使用特殊的属性名,不能采用.的方法来操作
	obj["123"]= 789;
	console.log(obj[123]);
	//读取的时候同样使用属性名取
	obj["name"]="你好";
	var n = "name";
	console.log(obj[n]);

属性值

 js属性值:可以是任意数据类型
  甚至可以是给对象

	   obj.test = true;
	   obj.test = null;
	   obj.test = undefined;
	   var obj2 = Object();
	   obj2.name="名称2";

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

console.log("var" in obj);

在这里插入图片描述

基本数据类型和引用数据类型

基本数据类型

  基本数据类型:string number boolean null undefined
  引用数据类型 object

  js中变量都是保存在栈内存的
  基本数据类型的值直接在栈内存中存储
  值于值之间是独立存在的,在修改一个变量不会影响其他的变量

  对象是保存在堆内存中,每创建一个新的对象就会在堆内存中开辟一个新的空间
  而变量保存的是对象的内存地址(对象的引用),如果两个变量保存的是同一个对象引用
  当一个通过变量修改属性时,另一个也会收到影响
基本数据类型
在这里插入图片描述
引用数据类型
在这里插入图片描述
当我们比较两个基本数据类型时,就是比较他们的值。
当比较两个引用数据类型时,就比较他们的内存地址
每new一个对象时,都开辟一个空间

var obj3 = new Object();
var obj4 = new Object();
obj3.name="shs";
obj4.neme="shs";

如果他们的值一样,但是地址不同,还是会返回fales
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值