• JavaScript对象知识点总结


    目录

    一、什么是对象

    二、创建对象

    1、利用字面量创建对象

    2、利用new Object创建对象

    3、利用构造函数创建对象 

    4、构造函数和对象的区别

    5、new关键字的执行过程

    6、遍历对象

    三、总结


    一、什么是对象

            1、在现实生活中:万物皆对象,对象是一个具体的事物,看得见摸得着的事物
            例如:一本书、一个人都可以是对象,一个数据库、一张网页也可以是对象
            2、在JavaScript中,对象是一组 无序的相关属性和方法的集合,所有事物都是
            对象,例如字符串、数值、书序、函数等
            对象是由 属性方法组成的
            (1)属性:事物的的特征,在对象中用属性来表示(常用名词)
            (2)方法:事物的行为,在对象中用方法来表示(常用动词)
            3、为什么需要对象呢
            因为我们在保存一个值时,可以使用变量,保存多个值(一组值)时,可以使用数组
            但是如果我们需要保存一个事物的完整信息,就类似于一个人的完整信息,这是变量
            和数组可能就心有余而力不足,所以就需要对象。
             JavaScript中的对象中结果更清晰,更强大。

    二、创建对象

            创建对象有三种方式

           1、利用字面量创建对象

        (1)对象字面量: 就是花括号{}里面包含了表达这个具体事物(对象)的属性和方法
            
     var obj = {}; //创建了一个空的对象
    代码展示:
    1. var obj = {
    2. uname:'大耳朵图图',
    3. age:12,
    4. sex:'男',
    5. sayHi:function(){
    6. console.log('敲代码');
    7. }
    8. }

    注意:

          1)里面的属性或者方法我们采取键值对的形式 健 属性名 : 值 属性值

          2)多个属性或者方法中间用逗号隔开

          3)方法冒号里面跟一个匿名函数

    (2)创建完对象之后就要适用对象

    1)调用对象的属性 我们采取对象名.属性名 我们理解为 的

       console.log(obj.uname);

    (2)调用属性方法二 : 对象名['属性名']

    console.log(obj['age']);

    3)调用对象的方法 sayHi  对象名.方法名()

        obj.sayHi();

    注意:千万别忘记添加小括号

    结果展示:

    2、利用new Object创建对象

     var obj = new Object();     //创建了一个空的对象

    代码展示:

    1. var obj = new Object(); //创建了一个空的对象
    2. obj.uname = '大耳朵图图';
    3. obj.age = 12;
    4. obj.sex = '男';
    5. obj.sayHi = function(){
    6. console.log('打游戏');
    7. }
    8. console.log(obj.uname);
    9. console.log(obj.age);
    10. obj.sayHi();

    注意:

     (1)我们是利用 等号 = 赋值的方法 添加对象的属性和方法

     (2)每个属性和方法之间用 分号结束

    结果展示:

    3、利用构造函数创建对象 

    (1)为什么需要使用构建函数创建对象

    因为我们一次创建一个对象,里面很多属性和方法都是大量相同的 我们只能赋值,所以我们可以利用函数的方法重复这些相同的代码 我们就把这个函数称为构造函数。构造函数里面封装的不是代码,而是对象,就是把对象里面一些相同的属性和方法抽象出来封装到函数里面。

     (2)构造函数:是一种特殊的函数,主要用来初始化对象,即为对象成员赋初始值,他总与new运算符一起使用,我们可以把对象中一些公共的属性和方法抽取出来,然后封装到这个函数里面。

    (3)代码展示:

    例题:利用构造函数创建两个王者荣耀英雄

    (name :名字,type:类型,blood:血量,attack:攻击方式)

    代码展示:

    1. function Steam(name,type,blood) {
    2. this.name = name;
    3. this.type = type;
    4. this.blood = blood;
    5. this.attack = function(att){
    6. console.log(att);
    7. }
    8. }
    9. var houyi = new Steam('后裔','射手型','6000');
    10. console.log(houyi.name);
    11. console.log(houyi.type);
    12. console.log(houyi.blood);
    13. houyi.attack('远程')
    14. var lp = new Steam('廉颇','力量型','12000');
    15. console.log(lp.name);
    16. console.log(lp.type);
    17. console.log(lp.blood);
    18. lp.attack('近战')

    结果展示:

    4、构造函数和对象的区别

    (1)构造函数 游戏 泛指的某一大类 类似于java里面的类

    (2)对象 特指某一个 是一个具体的事物

    (3)我们利用构造函数创建对象的过程我们也称为对象的实例化

    5、new关键字的执行过程

    (1)new 构造函数可以再内存中创建一个空的对象

    (2)this就会指向刚才创建的对象

     (3)执行构造函数里面的代码,给这个空对象添加属性和方法

     (4)返回这个对象

    6、遍历对象

      (1)方法:使用 for in 遍历对象
    (2)语法:
     for(变量 in 对象){}

    (3)代码展示

    1. ar obj = {
    2. name: '枕头睡不醒',
    3. age:18,
    4. sex:'男',
    5. fn: function(){
    6. //也可以遍历方法,只是很少用
    7. }
    8. }
    9. for(var k in obj) {
    10. console.log(k); //k为变量 输出变量得到是属性名
    11. console.log(obj[k]); // obj[k] 得到是里面的属性值
    12. }

    结果展示:

    (4)注意:我们使用 for in 里面的变量 我们喜欢写 k 或者 key 不是规定死的 

    三、总结

    (1)对象可以让代码结构更清晰
    (2)对象复杂数据类型object,
    (3)本质:对象就是一组无序的相关属性和方法的集合。
    (4)构造函数泛指某-大类 ,比如苹果,不管是红色苹果还是绿色苹果,都统称为苹果。
    (5)对象实例特指-个事物,比如这个苹果、正在看这篇博客你们等。
    (6)for..in语句用于对对象的属性进行循环操作。

    结束语:

    博学之,审问之,慎思之,明辨之,笃行之。

                                                                                                                                    ——《礼记》

  • 相关阅读:
    实战案例:如何批量查询物流信息并将结果导出到表格?
    TDengine3.0 新架构设计思路
    ES6
    Node Sass version 7.0.3 is incompatible with ^4.0.0.
    Python几类并行方法比较
    细胞膜仿生修饰树枝状聚酰胺-胺PAMAM/细胞膜修饰超声造影剂/介孔硅
    1.MySQL ----数据库的基础操作
    JavaScript基础(4)_强制类型转换
    完成“重大项目”引进签约,美创科技正式落户中国(南京)软件谷
    React数据管理Redux和thunk异步操作
  • 原文地址:https://blog.csdn.net/weixin_52984349/article/details/126281827