前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >前端基础-JavaScript对象(Object)

前端基础-JavaScript对象(Object)

作者头像
cwl_java
发布2020-03-26 16:10:05
8060
发布2020-03-26 16:10:05
举报
文章被收录于专栏:cwl_Java

第9章 对象(Object)

9.1 什么是对象

万物皆对象

代码语言:javascript
复制
现实生活中:万物皆对象,对象是一个具体的事物,一个具体的事物就会有行为和特征。
举例: 一部车,一个手机
车是一类事物,门口停的那辆车才是对象
	特征:红色、四个轮子
	行为:驾驶、刹车

9.2 JavaScript中的对象

代码语言:javascript
复制
JavaScript中的对象其实就是生活中对象的一个抽象
JavaScript的对象是无序属性的集合。
其属性可以包含基本值、对象、数组或函数。
对象就是一组没有顺序的值。
我们可以把JavaScript中的对象想象成键值对,其中值可以是数据和函数。
对象的行为和特征
	特征---属性
	行为---方法

事物的特征在对象中用属性来表示。

事物的行为在对象中用方法来表示。

属性和方法统称为对象的成员。

9.3 如何得到一个对象

  • 字面量方式创建对象 var obj1 = {};//得到一个空对象 var obj2 = {name:'张三',age:18};//得到拥有两个属性的对象 //得到拥有两个属性和一个方法的对象 var obj3 = { name:'张三', age:18, fei:function(){ console.log('你上天啊!'); } }
  • new Object() 创建对象 (内置构造函数) var person = new Object(); person.name = 'lisi'; person.age = 35; person.sayHi = function(){ console.log('Hello,everyBody'); }
  • 自定义构造函数创建对象 function Person(name,age,job){ this.name = name; this.age = age; this.job = job; this.sayHi = function(){ console.log('Hello,everyBody'); } } var p1 = new Person('张三', 22, 'actor');

new关键字和构造函数

构造函数 ,是一种特殊的函数,又叫做函数构造器。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。

  1. 构造函数用于创建一类对象,首字母通常大写。
  2. 构造函数要和new一起使用才有意义。
  3. new 关键字也读做实例化。实例化构造函数,得到一个对象。 ​

9.4 this 的指向

JavaScript中的this指向问题,比较复杂,有时候会让人难以捉摸,随着学习的深入,我们会不断接触this, 在学习过程中,我们可以不断总结,最终搞清楚this在何种情况下指向何处…… 目前,我们只需要记住以下两点就可以了: 1: 函数如果在某个对象下,this就指向这个对象 2: 函数如果被直接调用,this指向window对象

代码语言:javascript
复制
var o1 = {
    name: '山治',
    f: function () {
        console.log(this.name);
    }
}
o1.f(); // 山治
代码语言:javascript
复制
function f(){
    console.log(this);
}
f();
console.log(window);

9.5 对象的使用

  • 方法及属性的使用
代码语言:javascript
复制
对象.方法名(); //调用对象的方法
对象.属性;   //获取对象的属性
  • 遍历对象的属性

通过for…in语法可以遍历一个对象

代码语言:javascript
复制
var obj1 = {
    name:'路飞',
    age : 17,
    sex : '男',
}

for(var k in obj1){
    console.log(k);
    console.log(obj1[k]);
}

注意:使用for …in语法,同样可以遍历数组 注意:如果属性名或方法名,是一个变量,则使用对象[变量名] 语法

  • 删除对象的属性
代码语言:javascript
复制
var obj1 = {
    name:'路飞',
    age : 17,
    sex : '男',
}

console.log(obj1.age); //17
delete obj1.age;  //删除对象中指定的属性
console.log(obj1.age); // undefined

总结: 创建对象有三种方式,字面量、new内置构造函数及自定义构造函数;对象中有属性及方法,this指向当前对象,使用 . (点) 语法调用属性及方法;

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第9章 对象(Object)
    • 9.1 什么是对象
      • 9.2 JavaScript中的对象
        • 9.3 如何得到一个对象
          • 9.4 this 的指向
            • 9.5 对象的使用
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档