首页 > 代码库 > JS学习笔记-数组

JS学习笔记-数组

          ECMAScript中没有提供类和接口等的定义,但它却是一门面向对象的语言,因为它可以通过其他方式实现类似高级语言的面向对象功能,这些内容将在后面的文章中进行一步步的总结。此篇仅对JS中对象作简要说明,重点汇总一些类似于对象的数组的常用方法。

对象

        创建

        上篇提到创建对象的两种方式:

                  使用new运算符创建Object   

                           var obj = new Object();

                  使用字面量方式创建                   

                          var  obj = {};

        这里值得注意的是在使用字面量(常量)创建Object时不会调用构造函数。

 

        属性和方法

                 添加:

                          使用new创建后的添加方式

                            obj.name = ‘张三

                            obj.run =function(){

                                      return‘‘;

                             }

                          使用字面量创建方式

                          var obj = {

                                   name : ‘张三‘;

                                   run : function(){

                                            return ‘‘;

                                   }

                          };

                 注意点:使用数组方式也可进行属性的输出obj[‘name‘];使用delete关键字可进行对象属性的删除

 

数组

         Array类型与Object一样,同样是引用类型,而ESMAScript中的数组不同于其他语言中的数组,其中元素可以保存任何类型,该区别源于ESMAScript的变量类型松散性。

        创建(与Object类型类似,数组的创建分为两种方式)

                 使用new关键字

                 var arr = new Array();

                  var   arr = new Array(10);

                  var arr =new Array(‘张三‘,‘李四‘,‘王五‘);

                 使用字面量

                 var arr = [];

                  var  arr = [‘张三‘,‘李四‘,‘王五‘];

        使用

                 使用下标进行读取

                 alert(arr[2]);        //输出王五

 

                 使用length属性获取数组元素个数

 

内置方法

        转换

                 toString()valueOf()toLocaleString()

                 三个方法会返回相同的值,输出对象或数组信息时为默认调用方法

                 数组分隔符设置方法,默认为‘,‘如需修改可调用join()方法

                   var  arr = [‘张三‘,‘李四‘,‘王五‘];

                 alert(arr.join(‘|‘));            //输出张三|李四|王五

        栈、队列(数组)

                 push()/pop()

                  push()/shift()

                 类似于栈、队列对数组元素进行的操作,与shift()对应的另外一方法是unshift(),为数组前端添加元素。需要说明的是添加元素的方法会返回数组长度,删除元素的方法会返回删除的元素。

        重排序

                  逆序reverse()、正序sort()

 小结:                 

    不得不说,ECMAScript为数组提供了很多方法,这些也只有到以后的实践中逐步应用与探索了。