JavaScript 对象

什么是对象
现实生活中:万物皆对象,对象是一个具体的事物,看得见摸得着的实物。例如:一本书、一辆汽车、一个人可以是“对象”,一个数据库、一张网页、一个与远程服务器的连接也可以是“对象”

在 JavaScript中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组函数等。

对象是由: 属性方法组成的

  • 属性: 事物的特征,在对象中用属性来表示(常用名词)
  • 方法: 事物的行为,在对象中用方法来表示(常用动词)

创建对象的三种方式
在JavaScript 中,现阶段我们可以采取三种方式创建对象(object)

  • 利用字面量创建对象
  • 利用new Object创建对象
  • 利用构造函数创建对象
   // 利用字面量创建一个对象
    // 1、创建空对象
    var obj = {}
    var obj = {
        name:'xiaoming',
        sex:'nan',
        age:18,
        doSome : function () {
            console.log('干饭');
        }
    };
    // 获取对象里面值   利用的 对象名. 属性名 
    // 1)里面的属性或者方法我们采取键值对的形式  键  属性名  : 值 属性值
    // 2)多个属性和方法中间有英文逗号隔开
    // 3)方法冒号的后面是匿名函数

    // 2、使用对象
    // 1)调用对象的属性   我们是利用   对象名.属性名
    console.log(obj.name);
    console.log(obj['name']);
    // 2)调用属性还有一种方法 对象名['属性名']
    console.log(obj['sex']);
    // 3) 调用对象的方法 doSome 对象名.方法名 千万不要忘记添加小括号 哦!!!
    obj.doSome();
  // 利用 new Object 创建对象
    var obj = new Object();  // 创建了一个空对象
    obj.name = '小明';
    obj.age = 18;
    obj.sex = '男';
    obj.doSome = function () {
        console.log('halou');
    }

    // 1)我们是利用 等号(=)  赋值的方式  添加对象的属性和方法
    // 2)每个属性和方法之间用 英文 分号结束

    // 2、使用  代码验证
    console.log(obj.name);
    console.log(obj.age);
    console.log(obj['sex']);
    obj.doSome();

  // function 构造函数名() {
    //     this.属性名 = 值;
    //     this.方法 = function () {
            
    //     }
    // }
    // new 构造函数名();
 function Star(name,sex,age,profession) {
        this.name = name;
        this.sex = sex;
        this.age = age;
        this.profession = profession;
        this.sing = function (sang) {
            console.log(sang);
        } 
    }

    var ldh = new Star('刘德华','男',56,'歌手');
    var zxy = new Star('张学友','男',59,'歌手');
    var hh = new Star('华晨宇','男',30,'歌手');
    console.log(ldh.name);
    console.log(ldh['sex']);
    console.log(ldh.age);
    console.log(ldh.profession);
    ldh.sing('冰雨');

    console.log(zxy.name);
    console.log(zxy['sex']);
    console.log(zxy.age);
    console.log(zxy.profession);
    zxy.sing('一千个伤心的理由');

    console.log(hh.name);
    console.log(hh['sex']);
    console.log(hh.age);
    console.log(hh.profession);
    hh.sing('烟火里的尘埃');
    
    // 1、构造函数名字首字母要大写
    // 2、构造函数不需要 return 就可以返回结果
    // 3、我们调用构造函数 必须使用 new
    // 4、我们主要 new Star() 调用函数就是创建一个对象 
    // 5、我们属性和方法前面必须 添加 this 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值