一、JavaScript对象之数组

  1、创建数组的方式

    (1)使用Array构造函数

       语法:new Array()

      小括号()说明:

        -预先知道数组要保存的项目数量

        -向Array构造函数中传递数组应包含的项

    (2)使用数组字面量表示法

       -由一对包含数组项的方括号[]表示,多个数组之间以逗号隔开

    2、数组元素的读写

      -读取和设置值时,使用方括号[]并提供相应的索引

       说明:索引是从0开始的正整数

    3、数组的长度

      语法:array.length

      功能:获取数组array的长度

      返回值:number

      说明:

        -通过设置length可以从数组的末尾移除或向数组中添加新项。

        -把一个值放在超出当前数组大小的位置上时,会重新计算数组长度值,长度值等于最后一项索引加1。

    4、数组方法的栈方法

      push()   unshift()   pop()  shift()

     (1)push()

       -语法:

         arrayObject.push(newele1,newele2……newelen);

       -功能:

         把它的参数顺序添加到arrayObject的尾部。

       -返回值:

         把指定的值添加到数组后的新长度。

       -例: 

 <script>
var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
arr.push("sass");
console.log(arr);
</script>

    (2)unshift()

       -语法:

         arrayObject.unshift(newele1,newele2……newelen);

       -功能:

         把它的参数顺序添加到arrayObject的开头。

       -返回值:

         把指定的值添加到数组后的新长度。

       -例:      

 <script>
var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
arr.unshift("sass");
console.log(arr);
</script>

    (3)pop()

       -语法:

         arrayObject.pop();

       -功能:

         删除数组最后一个元素。

       -返回值:

         被删除的那个元素。

       -例:

 <script>
var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
var n= arr.pop();
console.log(n);
</script>

    (4)shift()

       -语法:

         arrayObject.shift();

       -功能:

         删除数组第一个元素。

       -返回值:

         被删除的那个元素。

       -例:

<script>
var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
var r=arr.shift();
console.log(r);
</script>

    5、join() 、reverse()、sort()方法

        -join():把数组转换成字符串

        -reverse():把数组元素顺序反转

        -sort() :对数组元素排序

      (1)join()

         -语法:

           arrayObject.join(separator);

         -功能:

            把数组所有元素放入一个字符串。

           -返回值:

            字符串。

           -例:

<script>
var arr=["HTML" ,"CSS", "JavaScript" , "HTML5","CSS3" ];
var r=arr.join("-"); //括号内为空的话,默认是,(逗号)连接;
console.log(r);
document.write(r);
</script>

    (2)reverse()

        -语法:

         arrayObject.reverse();

       -功能:

         用于颠倒数组中的元素顺序。(反转)

       -返回值:

         数组。

       -例:   

<script>
var arr=["a" ,"b", "c" , "d","e" ];
var r=arr.reverse();
console.log(r);
</script>

      (3)sort()

       -语法:

           arrayObject.sort(sortby);

         -功能:

            把数组内元素进行排序。

           -返回值:

            数组。

           -说明:

          -即使数组中的每一项都是数值,sort()方法比较的也是字符串。

          -sort()方法可以接收一个比较函数作为参数。

         -例:

          

<script>
var arr=[10,11,1,2,5,88,9,-1 ];
var r=arr.sort(function (a,b) {
return a>b;
});
console.log(r);
</script>

      

      (4)例子:让我们来封装一个函数,实现不用reverse()方法也能实现数组反转的功能,比如:数组1,2,3,4,5,通过该函数反转后,输出的是:5,4,3,2,1。

<script>
function arrReverse(arr){
var newArr=[];
for(var i=0;i<arr.length;i++){
return newArr= arr.sort(function (a,b) {
return a<b;
});
}
}
document.write(arrReverse([1,2,3,4,5,6,7,8]));
</script>

    

    6、数组方法(concat和slice)

        -concat()

        -slice()

      (1)concat()

        -语法:

           arrayObject.concat(arrayX,arrayX……arrayX);

         -功能:

              连接两个或多个数组

           -返回值:

              数组。

         -例:

<script>
var arr1=["a","b","c","d",1],
arr2=["e","f",1,2],
arr3;
arr3=arr1.concat(arr2); //arr2后面还可以加数组。
console.log(arr3);
</script>

      (2)slice()

         -语法:

           arrayObject.slice(start,end);

         -功能:

              从已有的数组中返回选定的元素

           -参数:

            start(必需)规定从何处开始选取,如是负数,从数组尾部开始算起

            end(可选)规定从何处结束选取,是数组片断结束处的数组下标

         -说明:

            -如没指定end,切分的数组包含从start到数组结束懂得所有元素。

            -如slice()方法的参数中有一个负数,则用数组长度加上该数来确定相应的位置

        -返回值:

            数组。

        -例;

<script>
var arr1=[1,2,3,4,5,6,7,8,9],
arr3;
arr3=arr1.slice(-6,8);
console.log(arr3);
</script>

    7、数组方法(splice)

     (1)删除

       -语法:

           arrayObject.splice(index,count);

         -功能:

             删除从index处开始的零个或多个元素。

            -返回值:

            含有被删除的元素的数组。

           -说明:

           -count是要删除的数量.如果设置为0,则不会删除。如果不设置,则从index处开始删除所有值。          

           -例:    

 <script>
var arr1=["a","b","c","d",1],
arr3;
arr3=arr1.splice(1,2);
console.log(arr3);
</script>

    (2)插入

       -语法:

           arrayObject.splice(index,0,item1……itemx);

         -功能:

             在指定位置插入值

            -返回值:

            数组

           -参数:

           index:起始位置

           0:要删除的项数   

           item1……itemx :要插入的项    

           -例:         

 <script>
var arr1=["a","b","c","d","e"];
arr1.splice(2,0,"m","n");
console.log(arr1);
</script>

     (3)替换

       -语法:

           arrayObject.splice(index,count,item1……itemx);

         -功能:

             在指定位置插入值,且同时删除任意数量的项。

            -返回值:

            从原始数组中删除的项(如果没有删除的项,则返回空数组)

           -参数:

           index:起始位置

           count:要删除的项数   

           item1……itemx :要插入的项    

           -例:

<script>
var arr1=["a","b","c","d","e"];
arr1.splice(2,2,"m","n","j");
console.log(arr1);
</script>

     8、数组方法(indexOf和lastIndexOf)

      (1)indexOf

         -语法:

           arrayObject.indexOf(searchvalue,startIndex);

         -功能:

             从数组的开头(位置0)开始向后查找

            -返回值:

            number。查找的项在数组里面的位置,没有找到的情况下返回-1;

           -参数:

           searchvalue:必需,要查找的项;

           startIndex:可选,起点位置的索引。      

           -例:

<script>
var arr1=[1,2,3,4,5,6,7];
var pos=arr1.indexOf(3);
console.log(pos);
</script>

      (2)lastIndexOf

         -语法:

           arrayObject.lastIndexOf(searchvalue,startIndex);

         -功能:

             从数组的末尾开始向后查找

            -返回值:

            number。查找的项在数组里面的位置,没有找到的情况下返回-1;

           -参数:

           searchvalue:必需,要查找的项;

           startIndex:可选,起点位置的索引。      

           -例:

 <script>
var arr1=[1,2,3,4,5,6,7];
var pos=arr1.lastIndexOf(5);
console.log(pos);
</script>

JavaScript内置对象之数组的更多相关文章

  1. JavaScript内置对象(字符串,数组,日期的处理)

    Date 日期对象 日期对象可以储存任意一个日期,并且可以精确到毫秒数(1/1000 秒). 定义一个时间对象 : var Udate=new Date(); 注意:使用关键字new,Date()的首 ...

  2. javaScript 内置对象-Array数组

    Array 对象方法 方法 描述 concat() 连接两个或更多的数组,并返回结果. join() 把数组的所有元素放入一个字符串.元素通过指定的分隔符进行分隔. pop() 删除并返回数组的最后一 ...

  3. JavaScript 内置对象 Array 数组

    Array 数组 1.创建数组 构造函数 new Array() 小括号内可以是数组元素个数,也可以是数组项 数组字面量表示法 var arr = [1,2,3,4,5]; 2.数组长度 arr.le ...

  4. 学习笔记:javascript内置对象:数组对象

    1.数组对象的创建   1.设置一个长度为0的数组  var myarr=new array(); 2.设置一个长度为n的数组  var myarr=new arr(n); 3.声明一个赋值的指定长度 ...

  5. document和javaScript内置对象

    1.Document 属性: referrer //返回载入当前文档的URL URL //返回当前文档的URL 方法: getElementById(); //根据id获取html元素对象 getEl ...

  6. javascript 内置对象及常见API

    javascript 内置对象及常见API 2012-09-02 15:17 571人阅读 评论(0) 收藏 举报 javascript正则表达式文档浏览器urlstring Javascript内置 ...

  7. JavaScript进阶 - 第7章 JavaScript内置对象

    第7章 JavaScript内置对象 7-1 什么是对象 JavaScript 中的所有事物都是对象,如:字符串.数值.数组.函数等,每个对象带有属性和方法. 对象的属性:反映该对象某些特定的性质的, ...

  8. JS基础-语法+流程控制语句+函数+内置对象【数组】

    JS语法: Javascript基本数据类型:undefined/null/Boolean/number/string 复杂数据类型:object typeof用来检测变量的数据类型 typeof的使 ...

  9. JavaScript高级:JavaScript面向对象,JavaScript内置对象,JavaScript BOM,JavaScript封装

    知识点梳理 课堂讲义 1.JavaScript面向对象 1.1.面向对象介绍 在 Java 中我们学习过面向对象,核心思想是万物皆对象. 在 JavaScript 中同样也有面向对象.思想类似. 1. ...

随机推荐

  1. Netbeans导入Nutch1.2

    Windows 环境下,Netbeans下导入Nutch1.2. 测试环境:  Nutch 1.2  Netbean7.4  Java 1.8.0_20  cygwin 安装步骤: 1.安装: ...

  2. vtk保存图像

    vtkWindowToImageFilter * wif = vtkWindowToImageFilter::New(); vtkBMPWriter *bmpw = vtkBMPWriter::New ...

  3. GCC的gcc和g++区别

    看的Linux公社的一篇文章,觉得不错,内容复制过来了. 其实在这之前,我一直以为gcc和g++是一个东西,只是有两个不同的名字而已,今天在linux下编译一个c代码时出现了错误才找了一下gcc和g+ ...

  4. instanceof关键字

    instanceof是Java.php的一个二元操作符(运算符),和==.>.<是同一类东西.由于它是由字母组成的,所以也是Java的保留关键字.它的作用是判断其左边对象是否为其右边类的实 ...

  5. iOS开发 GET、POST请求方法(NSURLSession篇)

    NSURLConnection,在iOS9被宣布弃用,本文不使用NSURLConnection进行网络编程,有兴趣的童鞋可以参考: [iOS开发 GET.POST请求方法(NSURLConnectio ...

  6. 将jquery.shCircleLoader插件修改为zepto.js兼容

    经过查阅资料zepto 和 jquery 的区别后发现是 (1)zepto.js  删去了 jquery 的 innerHeight() 和 innerWidth() 属性  (2)zepto.js和 ...

  7. IntelliJ IDEA 自动化工具安装并添加自动化测试框架

    IntelliJ IDEA是一个用于开发人员开发和测试人员自动化测试的测试工具,类似于eclipse. 优点:插件多自身可以携带,自身携带cucumber自动化测试框架,类似于junit一样 缺点:r ...

  8. java SSH框架详解(面试和学习都是最好的收藏资料)

    Java—SSH(MVC)1. 谈谈你mvc的理解MVC是Model—View—Controler的简称.即模型—视图—控制器.MVC是一种设计模式,它强制性的把应用程序的输入.处理和输出分开.MVC ...

  9. C#中如何定义全局变量及在各窗体中使用全局变量

    using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms; us ...

  10. linux mail 使用外部邮箱地址发邮件

    centos 61.系统yum安装的mailx会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置麻烦,而且会带来不必要的资源占用.通过修改配置文件可以使 ...