javascript 数组概述

什么是数组?

 Array(数组) 对象 称为数组

数组对象是使用单独的变量名来存储一系列的值。

数组可以用一个变量名存储所有的值,并且可以用变量名访问任何一个值。

数组中的每个元素都有自己的的ID,以便它可以很容易地被访问到

这是什么意思呢?

大家都去餐厅吃过饭吧?桌子有编号、或者有什么什么包间 ,这个餐厅就可以看做是一个数组,而里面的桌子或者包间就可以理解为它的元素,餐厅的名字为变量名,这样就很好理解了吧。那么我们就开始了解数组

创建一个数组

创建数组有三种方法

1)常规方式

 <script>
        var mygames = new Array();
        mygames[0] = "王者荣耀";
        mygames[1] = "绝地求生";
        mygames[2] = "英雄联盟";
    </script>

2)简洁方式

<script>
        var mygames = new Array("王者荣耀","绝地求生","英雄联盟");
    </script>

3)字面 简单方式

<script>
        var mygames = ["王者荣耀", "绝地求生", "英雄联盟"];
    </script>

访问数组

既然我们已经创造出来一个数组,那我们如何找到它的元素呢?

我们可以通过它的索引值来寻找到它,也就是好比餐厅里面桌子的编号

找到它并且赋给一个新的变量 以下例子可以找到数组mygames中的一个值

  <script>
        var mygames = ["王者荣耀", "绝地求生", "英雄联盟"];
        var a=mygames[0];
        console.log(a)
    </script>

0是数组的第一个元素 1是数组的第二个元素

数组方法和属性

下面给大家介绍几种常见的数组的使用方法和属性

1)every() 方法用于检测数组所有元素是否都符合指定条件

 <script>
    var num=[24,34,143,46,46,4,5]
    var c = num.every(function (item) {
            //都大于50显示true  否则显示为false
            return item > 50;
        })
        console.log(c)
    </script>

2)find() 方法返回通过测试(函数内判断)的数组的第一个元素的值

     findIndex()方法是返回一个测试条件 找到第一个满足条件的值的位置

 <script>
        //find() 方法返回通过测试(函数内判断)的数组的第一个元素的值
        var num = [34, 346, 67, 526, 356,]
        var a = num.find(function (item) {
            return item > 50;
        })
        console.log(a) //346
 </script>
<script>
//findIndex() 方法返回传入一个测试条件(函数)符合条件的数组第一个元素位置。
        var b = num.findIndex(function (item) {
            return item > 50;
        })
        console.log(b) //1
</script>

3)filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

<script>
var c = num.filter(function (item) {
            return item > 50;
        })
        console.log(c) //[346, 67, 526, 356]
</script>

4)foreach 列出数组的每个元素 分别打印输出

    <script>  
    var num=[12,454,967,342,48]
    num.forEach(function(item){
        console.log(item) //12 454 967 342 48
    })
    </script>

5)includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。

    <script>
        var num = [45, 67, 27, 56, 645]
        var a = num.includes(56)
        console.log(a)//true
        
        var b = num.includes(13)
        console.log(b)//false
    </script>

6)isArray() 方法用于判断一个对象是否为数组。如果对象是数组返回 true,否则返回 false。

  <script>      
    var num=[56,456,54,324,2]
    var num1="hello";
    var a=Array.isArray(num);
    var b=Array.isArray(num1);
    console.log(a) //true
    console.log(b) //false
  </script>

7)index 查找元素在节点中的位置 index值

  <script>
    //index 查找元素在节点中的位置 index值
    var num=[9,4,35,54,45,54]
    var num1=num.indexOf(54);//3
    console.log(num1)

    //从后向前搜索 
    var num2=num.lastIndexOf(54);
    console.log(num2) //5
  </script>

8)map() 函数执行 通过指定函数处理数组的每个元素,并返回处理后的数组

<script>
        var num = [1, 2, 3, 4, 5];
        num1 = num.map(function (item) {
            //数组中的每个元素乘于输入框指定的值,并返回新数组:
            return item * 2;
        })
        console.log(num1)
</script>

9)reduce 计算数组元素相加后的总和

<script>
 var num = [12, 23, 45, 65, 45, 32, 54];
        var total = 0;
            //reduceRight() 从数组的末尾开始相加
            //reduce()     从首位开始相加
        var num1 = num.reduce(function (total, num) {
            return total + num;
        })
        console.log(num1) //276
</script> 

10)reverse 把数组反转

<script>
    var num=[2,3,4,56,7,8];
    num.reverse();
    console.log(num);
    // 输出[8, 7, 56, 4, 3, 2]
</script>

11)slice 从数组中选取元素

 <script>
    var num=[1,13,645,34,6,66,46];
             //(从index后开始选取,截止到某个元素前)
   var num1= num.slice(2,4);
    console.log(num1)
</script>

12)splice 从数组中添加或删除元素

<script>
        var num = [123, 1, 154, 124, 456, 143, 65];
        //index,从index开始要删除几个元素 可以为0,要添加的元素
        num.splice(2, 0, "hello");
        console.log(num)
</script>

13)tostring 转换成字符串

<script>
    var num=[12,154,15,521,55,1454];
    //转换成字符串
    var a=num.toString();
    console.log( a);
    // console.log(typeof num)
    </script>

14)sort ()将数组中的数字按大小排序

<script>
        var num = new Array;
        num[0] = "45";
        num[1] = "78";
        num[2] = "24543";
        num[3] = "454";
        num[4] = "445";
        var num1 = num.sort();
        console.log(num1)
        //["24543", "445", "45", "454", "78"] 未按顺序排列 想要以顺序排列 需要函数

        var num2=num.sort(function(a,b){
            return a-b;
        }) 
        console.log(num2)
        //["45", "78", "445", "454", "24543"] 顺序排列

        var num3=num.sort(function(a,b){
            return b-a;
        }) 
        console.log(num3)
        //["24543", "454", "445", "78", "45"] 倒序排列

    </script>

15)增删

<script>
        var num = ["你瞅啥", "瞅你咋地", "再瞅个试试", "试试就试试"];

        //增加 增加到后面
        // num.push("hello");
        //删除 从后面删除
        // num.pop();


        //增加到前面
        num.unshift("HI");
        //从前面删除
        num.shift();
        console.log(num)
</script>

16)join 字符串转换

<script>
     var num=["你瞅啥","瞅你咋地","再瞅个试试","试试就试试"];
     var num1=num.join();

       //转换为字符串
    var num2=num1.split();
     console.log(num1)
     console.log(num2)
    </script>

17)concat 数组合并

<script>
        //创建一个数组
    var num=[1,2,3,4,5,6,7];
    var num1=[7,6,5,4,3,2,1];
                 //数组合并
    var num2=num.concat(num1);
    console.log(num2)
    //输出为12345677654321
    //num和num还是原来模样
    </script>

18)for..in..遍历数组
 

<script>
    var num=["你好","我好","大家好"];
  for( index in num){
      console.log(num[index])
  }
    </script>

等等吧,还有许多没有给大家介绍 有兴趣的话可以去网络中搜索一下 还有那些数组的方法

以上就是我为大家带来的数组的概念和属性方法 ,还请大家大哥大姐们多多支持,有哪里写的不对的,还请指点一下。

猜你喜欢

转载自blog.csdn.net/W859265708/article/details/81123275
今日推荐