JS对象定义和基本方法

  • js如何定义对象

用var关键字

JavaScript用一个{…}表示一个对象,键值对以xxx: xxx形式申明,用,隔开。注意,最后一个键值对不需要在末尾加,,如果加了,有的浏览器(如低版本的IE)将报错。

var 对象名字={
属性
方法
<script>
                  var xiaoming={
                   name:"worker",
                   age:23,
                   salary:7000,
                  };
                  alert(worker.salary+worker.name+worker.age);
 </script>
};

复制代码
  • 总结 1、记得花括号后面的分号

2、每个属性用逗号隔开

  • 访问属性是通过.操作符完成的,但这要求属性名必须是一个有效的变量名。如果属性名包含特殊字符,就必须用’'括起来:
jsvar xiaohong = { name: '小红',
 'middle-school': 'No.1 Middle School' 
 };
复制代码
  • xiaohong的属性名middle-school不是一个有效的变量,就需要用’'括起来。访问这个属性也无法使用.操作符,必须用[‘xxx’]来访问:
xiaohong['middle-school']; // 'No.1 Middle School'
xiaohong['name']; // '小红'
xiaohong.name; // '小红'
复制代码

实际上JavaScript对象的所有属性都是字符串,不过属性对应的值可以是任意数据类型.

  • 如果访问一个不存在的属性会返回什么呢?JavaScript规定,访问不存在的属性不报错,而是返回undefined:

var xiaoming = {
    name: '小明'
};

复制代码

console.log(xiaoming.name);

console.log(xiaoming.age); // undefined

  • 由于js是对象是一个动态类型,你可以自由的给对象添加或删除属性:
<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
 <script>
                  var worker={
                   name:"xiaoming",
                   age:23,
                   salary:7000,
                          'middle-school': 'No.1 Middle School'
                  };
                  // 动态添加属性
                  worker.time;
                  worker.time=20;
                   worker.weight=100;
                   // 删除属性
                   delete worker.weight;
                  // alert(worker.salary+worker.name+worker.age);
                 document.write(worker.time+"<br />");
                 document.write(worker.weight+"<br />");
                 document.write(worker.name+"<br />");
                 document.write(worker['name']+"<br />");
                 document.write(worker['middle-school']+"<br />");
                 document.write(worker.mother);
 </script>
</head>
<body>	
</body>
</html>

复制代码

结果为:

20
undefined
xiaoming
xiaoming
No.1 Middle School
undefined
复制代码

———————————————————————————————————————————————

版权声明:本文为CSDN博主「小梦新靓」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:blog.csdn.net/qq_43712187…

分类:
前端
标签: