[JavaScript学习笔记]对象那些儿事儿(都是细节,我已收藏!)

对象

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

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

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

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

为什么需要对象

保存一个值时,可以使用变量,保存多个值(一组值)时,可以使用数组。如果要保存一个人的完整信息呢?
我们就可以使用对象来存储变量,这样很方便!

创建对象的三种方式

在JS中,现阶段我们可以采用三种方式创建对象:

  • 利用字面量创建对象
  • 利用new Object创建对象
  • 利用构造函数创建对象

利用字面量创建对象

对象字面量:就是花括号{}里面包含了表达这个具体事物(对象)的属性和方法

  • 里面的属性或者方法我们采用键值对的形式
  • 多个属性或者方法中间用逗号隔开
  • 方法冒号后面跟的时一个匿名函数
        var obj={
            name:'41',
            age:18,
            sex:'男',
            say:function(){
                console.log('hi~');
            }
        };

使用对象

  • 调用对象的属性,我们采用 对象名.属性名
        console.log(obj.name);
  • 对象名[‘属性名’]
        console.log(obj['age']);
  • 调用对象的方法 say 对象名.方法名()
        obj.say();

利用new Object创建对象

  • 利用邓号赋值的方法,添加对象的属性和方法
  • 每个属性和方法之间用分号结束
        var obj=new Object();
        obj.name='41';
        obj.age=18;
        obj.sex='男';
        obj.say =function(){
            console.log('hi~');
        }

我们为什么需要使用构造函数呢?

前面两种创建对象的方式,一次只能创建一个对象。
我们可以利用函数的方法,重复这些相同的代码,我们就把这个函数成为 构造函数
构造函数 就是把我们对象里面一些相同的属性和方法抽象出来封装到函数中

  • 1.构造函数名字首字母要大写
  • 2.我们构造函数不需要return就可以返回结果
  • 3.我们调用构造函数 必须使用new
  • 4.我们只要new Star() 调用函数就创建一个对象
  • 5.我们的属性和方法前面必须添加this
        function Star(name,age,sex){
            this.name=name;
            this.age=age;
            this.sex=sex;
            this.sing=function(sang){
                console.log(sang);
            }
        }
        var obj=new Star('41',18,'男');
                console.log(obj.name);
        console.log(obj['age']);
        obj.sing('shine');

对象和构造函数的区别

构造函数 泛指某一大类,类似于java里面的类class
对象特指一个具体的事物
我们利用构造函数创建对象的过程也称为 对象的实例化!

new关键字

  • new构造函数可以在内存中创建一个空的对象
  • this就会指向刚才创建的空对象
  • 执行构造函数里面的代码 给这个空对象添加属性和方法
  • 返回这个对象

遍历对象属性

        for(var i in obj){
            console.log(i);
            console.log(obj[i]);
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值