JS中有關數組的一些操作

緒論

本篇文章主要記錄有關js數組的一些操作方法。

  1. 類型判斷。
  2. 數組轉字符串。
  3. 翻轉數組。
  4. 數組排序。
  5. 數組鏈接。
  6. 數組截取,替換。
  7. 索引位置。
  8. every遍歷,每次爲true,結果爲true。
  9. filter過濾器。
  10. forEach循環。
  11. some遍歷,一次爲true,結果爲true。
  12. 數組清空。

正文

<!DOCTYPE html>
<div lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>index</title>
    <script src="js/jquery-2.2.4.min.js"></script>
    <style>
       
    </style>
</head>

<body>

</body>
<script>

    $(document).ready(function () {
        array();
    });

    function array () {
        var arr = [7, 2, 1, 6, 4];
        var num = 123;
        // 檢測一個對象是否爲數組,簡單數據類型用typeof
        console.log('arr是數組嗎?' + (arr instanceof Array));
        console.log('num是數組嗎?' + (num instanceof Array));

        console.log('arr是數組嗎?' + Array.isArray(arr));
        console.log('num是數組嗎?' + Array.isArray(num));

        // join數組變字符串
        console.log('數組變字符串:' + arr.toString());
        console.log('數組變字符串:' + arr.join());
        console.log('數組變字符串:' + arr.join(','));

        // reverse翻轉數組
        console.log('翻轉數組:' + arr.reverse());

        // sort數組排序
        console.log('數組排序:' + arr.sort());
        // 數組排序 - 降序(b - a),升序(a - b)
        console.log('數組排序 - 降序:' + arr.sort(function(a, b) {return b - a}));

        var arr1 = [1, 9, 3];
        // concat數組鏈接
        console.log('數組鏈接:' + arr.concat(arr1));

        // splice數組截取
        console.log('數組截取,從索引值3開始到最後:' + arr.splice(3));
        arr = [7, 2, 1, 6, 4];
        console.log('數組截取,從索引值1開始獲取三個元素:' + arr.splice(1, 3));
        // 由於數組截取之後原數組中元素會消失,所以再次使用已經沒有數據,所以不展示
        console.log('數組截取,獲取最後2位:' + arr.splice(-2));
        arr = [7, 2, 1, 6, 4];
        console.log('數組截取,獲取最後2位:' + arr.splice(-2));
        // 數組替換
        arr = [7, 2, 1, 6, 4];
        arr.splice(1, 2, 'aaa');
        console.log('數組截取,刪除指定並替換:' + arr.toString());

        // indexOf/lastIndexOf索引位置,沒有則返回-1
        arr = [7, 2, 1, 6, 4, 7, 2, 1, 6, 4];
        console.log('索引位置,第一次出現:' + arr.indexOf(1));
        console.log('索引位置,最後出現:' + arr.lastIndexOf(1));

        arr = [7, 2, 1];
        // every數組遍歷,規則:c[b] = a
        // 每次結果都返回true,every最後才返回true,失敗就結束
        arr.every(function(a, b, c) {
            console.log('數組遍歷,元素:' + a);
            console.log('數組遍歷,索引:' + b);
            console.log('數組遍歷,本身:' + c);
            console.log('-----------------');
            return true;
        });

        // filter過濾器
        arr = [7, 2, 1, 6, 4, 7, 2, 1, 6, 4];
        var newArr = arr.filter(function(element, index, array) {
            if (element < 5) {
                return true;
            } else {
                return false;
            }
        });
        console.log('過濾器:' + newArr.toString());

        // forEach循環,沒有返回值
        arr = [7, 2, 1];
        arr.forEach(function(element, index, array) {
            console.log('數組遍歷,元素:' + element);
            console.log('數組遍歷,索引:' + index);
            console.log('數組遍歷,本身:' + array);
            console.log('-----------------');
        });

        // some一次執行結果爲true,則some爲true
        var b = arr.some(function(element, index, array) {
            if (element == 1) {
                return true;
            }
            return false;
        });
        console.log('some結果' + b);
        // 數組清空
        arr.length = 0;
        arr.splice(0);
        arr = [];
    }
</script>

</div>

結果

在這裏插入圖片描述
在這裏插入圖片描述

(若有什麼錯誤,請留言指正,3Q)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章