其他分享
首页 > 其他分享> > 属性名和属性值,要做好区分

属性名和属性值,要做好区分

作者:互联网

<script>
var obj = new Object();
/*
*向对象中添加属性
* 属性名,
* -对象的属性名不强制要求遵守标识的规范(可以是字母、数字、标识符、下划线..不能以数字开头,不能是保留字和标识字...)
* 什么乱七八糟的名字你都可以使用,换句话说你想用什么就用什么,但是尽量按照标识符的规范去做
*/
obj.name = "孙悟空";
obj.var = "hello";//可以用,尽量少用!
/*
*如果要使用特殊的属性名,不能采用.的方式来操作
* 需要使用另一种方式
* 语法:对象["属性名"] = 属性值-----读取时。也需要采用这种方式
*
* 使用[]这种形式去操作属性,更加的灵活。
* 在[]中可以直接传递一个变量,这样变量值是多少就会读取那个属性
*/
//obj["123"] = 789;//注意括号内是字符串,且是非标识符标准的属性名。可以是数字或者其他
//obj["nihao"] = "你好";
var n = "nihao";
//console.log(obj["123"]);//读取对应,如何读的就如何取出
//console.log(obj[n]);//此时的n为变量,这里是可以传送变量的哦~,赋值把什么赋值给变量,,就会传出什么,

/*属性值
*JS对象的属性值可以是任意的数据类型
* 甚至也可以是一个对象
*/
obj.test =true;
obj.test =null;
obj.test =undefined;
console.log(obj.test);

// 创建一个对象
var obj2 = new Object();
obj2.name = "猪八戒";
//将obj2设置为obj的属性
obj.test = obj2;//其实是把obj2转为属性值又赋值给obj.test
// console.log(obj.test.name)

/*
*in运算符:
* - 通过该运算符可以检查一个对象中是否含有指定的属性
* 如果有则返回true,没有则返回flase
* - 语法:
* "属性名" in 对象
*/ //console.log(obj.test2);
//检查obj中是否含有test2属性
// console.log("test2" in obj);//显示flase
// console.log("test" in obj);//显示true
console.log("name" in obj);//true 有的!
</script>

标签:obj2,console,log,区分,做好,test,obj,属性
来源: https://www.cnblogs.com/LiLi8866/p/16220779.html