JavaScript对象、属性、方法

源码下载

  本节课引入编程中的对象概念,如果使用过其他高级语言,对面向对象编程的思想应该不陌生,对象具有属性和方法,本节课需重要的目的就是然大家建立对象、属性、方法这三个词语的概念, 如果你不了解也没关系,下面通过案例来展示。

8        //班级10人分数组成的数组
9        let arr = [98,95,58,87,79,96,87,79,96,87];
10       //声明平均分变量
11       let average;
12       //声明总分变量
13       let S = 0;
14   //    for(let i = 0;i<10;i++){
15   //        S += arr[i];
16   //    }
17           for(let i = 0;i<arr.length;i++){
18               S += arr[i];
19           }
20       average = S/10;
21       document.write(average);

代码解析

  上面一段代码前面讲解过,本节课进行了简单更改,代码第14到第16行注释掉的代码和第17到第19行的代码功能是完全一样的,代码的区别在于第14行的大小比较语句是i<10;,第17行的比较语句是i < arr.length;, arr是数组的名字,length是数组的属性,该属性的值就是数组的元素个数,所以语句arr.length的返回值就是10,数组通过数组名和方括号[],以及方括号中的序号可以获得元素,可以把arr.length中的符号点“.”对比数组的方括号理解, 用来获取属性的值。

  在万物皆对象思想的指导下,数组也是对象,对象都有属性和方法,作为对象的数组同样具有方法和属性,数组名就相当于对象名。执行对象的方法类似获取属性值,都是通过符号点,区别在于属性只需要备注属性名字即可, 方法的调用就如同函数的调用,比如往数组arr里面加入数据,arr.push(86.2);86.2相当于方法的的参数,被插入数组的最后面。字符串类型数据也是对象的一种,它同样具有和数组对象一样的属性length, 比如let str="hello",str.length返回的结果是5,该字符串有5个字符单元。

  在万物皆对象思想的指导下,数组也是对象,对象都有属性和方法,作为对象的数组同样具有方法和属性,数组名就相当于对象名。执行对象的方法类似获取属性值,都是通过符号点,区别在于属性只需要备注属性名字即可, 方法的调用就如同函数的调用,比如往数组arr里面加入数据,arr.push(86.2);86.2相当于方法的的参数,被插入数组的最后面

  数组属性length和方法push给编程代码的好处有哪些,不知大家有没有思考。仍然回到上面的代码,假设一个班级的学生比较多,你也不知道有多少,如果手动对数组元素个数计数相当麻烦,如果使用length属性可以自动返回 元素个数,方法push一样,如果没有push通过指针的方式去修改数组,仍然要知道已经有多少个元素,假设数组arr现在有n个数据,那就需要执行语句arr[n]=86.2;来替代arr.push(86.2)语句;,