1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Document</title>
- <script>
-
- var obj = new Object();
- /*
- 向对象中添加属性
- 属性名:
- -对象的属性名不强制要求遵守标识符的规范
- 什么乱七八糟的名字都可以使用
- -但是我们使用时还是尽量按照标识符的规范去做
- */
- obj.name = "孙悟空";
- // obj.var = "hello";//var属于关键字,也不会报错
- // console.log(obj);
- // console.log(obj.var);
- /*
- 如果要使用特殊的属性名,不能采用“.”的方式来操作
- 需要使用另一种方式:
- 语法:对象["属性名"]=属性值;
- 读取时也需要采用这种方式
- 使用[]这种形式去操作属性,更加的灵活,
- 在[]中可以直接传递一个变量,这样变量值是多少就会读取哪个属性
- */
- //obj.123 = 789;//会报错
- obj["123"] = 789;
- obj["nihao"] = "你好";
- var n = "nihao";
- // console.log(obj[n]);
- /*
- 属性值
- JS对象的属性值,可以是任意的数据类型
- 甚至也可以是一个对象
- */
- obj.test = "hello";
- obj.test = null;
- obj.test = undefined;
- //创建一个对象obj2
- var obj2 = new Object();
- obj2.name = "二师兄";
- //将obj2设置为obj的属性
- obj.test = obj2;
- console.log(obj);
- console.log(obj.test);//读取obj2
- console.log(obj.test.name);//读取obj2里面的name属性
- /*
- in运算符
- -通过该运算符可以检查一个对象中是否含有指定的属性
- 如果有则返回true,没有则返回false
- -语法:
- “属性名” in 对象;
- */
- //检查obj中是否含有test2属性
- console.log("test2" in obj);//没有,所以输出为false
- console.log("test" in obj);//有,所以输出为true
- console.log("name" in obj);//有,所以输出为true
- </script>
- </head>
- <body>
-
- </body>
- </html>
|