创建对象的两种方式

使用对象字面量的方式创建对象

    var obj = {
      name: '刘德华',
      age: 18,
      sayHi: function () {
        console.log('hi');
      }
    };
    // 使用对象
    console.log(obj.name);
    console.log(obj['age']);  //注意,这里不能忘记掉引号。
    obj.sayHi();
    //属性采取的是属性名:属性值
    //多组属性和方法中间采用的是逗号隔开
    //方法后面跟的是函数。

使用 new Object创建对象

    var object = new Object();
    object.name = '刘德华';
    object.age = 19;
    object.sex = '男';
    object.sayHi = function(){
      console.log('忘情水');
    }
    //创建一个空对象,追加属性数据的方式。  对象名.属性名 = 值
    //使用方式和上面都一样。
    console.log(object.age);

自定义构造函数

上面两种方法,都只能一次创建一个对象,所以不太方便,如果我们需要一次创建多个对象的时候,就需要使用构造函数了。

    // function 构造函数名(参数1....){ 构造函数名的首字母要大写
    //this.属性名 = 属性值;
    //this.方法名 = function(){}
    // }
    // 调用构造函数   new 构造函数名()

示例:

function Star(name,age,sex){
      this.name  = name;
      this.age = age;
      this.sex = sex;
      this.sing = function(){
        console.log('唱歌');
      }
    }
    var ldh = new Star('张学友',22,'女');  //构造函数要通过new来调用
    console.log(ldh.name);
    console.log(ldh.age);
    console.log(ldh.sex);

new 关键字执行的过程

  1. new 构造函数可以产生一个新的空对象
  2. this 就指向我们创建的这个空对象
  3. 执行构造函数里面的代码(完成赋值操作)
  4. 返回这个对象。

this的指向问题

一般情况this指向他的调用者。

  1. this在函数中的指的是 window 。因为window调用了这个函数。
  2. this在对象中的指向是当前这个对象。
  3. this在构造函数中的指向当前的这个调用者。
(0)

相关推荐

  • 深入理解JavaScript面向对象的程序设计(一)——对象的创建

    JavaScript面向对象的程序设计(一)--对象的创建 目录 JavaScript面向对象的程序设计(一)--对象的创建 5.1 三个属性(三个指针) 5.2 理解原型对象 5.3 读取对象的属性 ...

  • JS的原型和继承

    __proto__ 除null和undefined,JS中的所有数据类型都有这个属性: 它表示当我们访问一个对象的某个属性时,如果该对象自身不存在该属性, 就从它的__proto__属性上继续查找,以 ...

  • JavaScript入门-对象(二)

    JavaScript对象(二) 本篇,主要讲了面向对象.this的指向问题,模拟继承过程 面向对象编程 什么面向对象编程? 编程,编程就是人们用计算机能懂的语言,告诉计算机自己想做的事情. 面向对象的 ...

  • 诚之和:如何掌握前端JavaScript中的class类

    本篇内容主要讲解"如何掌握前端JavaScript中的class类",感兴趣的朋友不妨来看看.本文介绍的方法操作简单快捷,实用性强.下面就让小编来带大家学习"如何掌握前端 ...

  • 深入理解new运算符

    在 JavaScript 中,new 运算符创建一个用户定义的对象类型的实例或具有构造函数的内置对象的实例.创建一个对象很简单,为什么我们还要多此一举使用 new 运算符呢?它到底有什么样的魔力? 认 ...

  • 利用new Object方式创建对象

    var obj = new Object();      //创建了一个空的对象 obj.uname = 'zhangsanfeng'; obj.name = 18;       //字面量方式创建对 ...

  • 如何理解javascript的对象?

    WEB前端开发社区 2021-07-23 1.1 什么是对象? 对象是事物,在现实世界中,一个球,一张桌子,一辆汽车都是对象. 对象就是具有可描述特征的事物,我们可以用某种特定的方式去影响和操作它. ...

  • JavaScript 的 对象

    学习目标:能够说出为什么需要对象 能够使用字面量创建对象 能够使用构造函数创建对象 能够说出new的执行过程 能够遍历对象 1.对象 1.1万物皆对象,对象是一个具体的事物 在程序里面,一个服务器,一 ...

  • 创建对象及原型

    一.使用Object构造函数或对象字面量创建对象 缺点:使用同一个接口创建对象,会产生大量的重复性代码. 解决方法:使用工厂模式创建对象. 1 //构造函数2 let obj1 = new Objec ...

  • 普通人养老,我只推荐这两种方式

    一个老领导退休了,朋友们都替她觉得高兴,感觉她可以过自由自在的人生了,但是只有她自己知道,想要过自由自在的人生,难: 老领导在职的时候一个月二万多的收入呢,现在退休了,每个月只能领一千多的退休金,这个 ...

  • 战胜贪婪的两种方式——理性和果断止损!

    止损是期货投资者必备的交易技巧.对于新手来说,很多人认为,每个人都要先经历亏钱过程,然后才能到达成功的彼岸,而亏钱则是投资者所必须要缴纳的"学费".如果真是这样的话,笔者希望这个& ...

  • 两种方式解决居间费、服务费、劳务费等税负问题

    两种方式解决居间费.服务费.劳务费等税负问题 企业一般在正常的经营中不可避免的会与个人发生业务往来,其中最常见的就是居间服务费用,也就是咱们常说的"中介费用",而且一般来说中介费用 ...

  • 运动和读书,是让自己摆脱“丧穷衰老”的两种方式

    达芬奇曾说,运动是一切生命的源泉. 当一个人真正理解这句话的时候,应该是申琴那段忙得昏天暗地却还是坚持去健身房运动成功减了65斤的日子. 总有人说,每天上下班,哪里还有时间和精力运动,回家就躺在沙发里 ...

  • 变频器控制电机运行最常用的两种方式

    当变频器主电路接好电源线之后,要控制电动机的运行,还需要给有关端子接上外围接控制电路,并且将变频器的启动方式参数设为外部操作模式. 变频器控制电动机运转,常见的有两种方式,分别是开关控制方式和继电器控 ...

  • 获得加V认证一共有两种方式

    获得加V认证一共有两种方式,第一种方式就是平台去邀请的那些领域大咖们,他们自动的就加上,比如说演员,比如说教授,领域知名人物,这类是被邀请的明星或者网红,加V自然就非常容易. 第二类就是需要自己认证的 ...

  • 两性交往,这两种方式,容易将对方的感情抹除

    2015年,我一个人去北京的时候,我在北京街头遇上了一个人: 这个人在北京街头嚎啕大哭,后面有一个人去询问的时候才发现,原来这个人失恋了. 这个人表示自己之前和自己的女朋友关系特别的好,但是由于自己做 ...

  • 构造柱植筋和预留两种方式暗藏机密,搞懂了,为你的老板盈利更多

    构造柱植筋和预留两种方式暗藏机密,搞懂了,为你的老板盈利更多

  • colab中切换路径的两种方式

    表白:黑白圣堂血天使,天剑鬼刀阿修罗.  讲解对象:/colab中切换路径的两种方式 作者:融水公子 rsgz Colab教程 Colab教程 http://www.rsgz.top/post/410 ...