javascript獲取數組最后一個元素(三種方法)


JavaScript 獲取Array末尾元素

一、JavaScript pop() 方法

pop() 方法用於刪除並返回數組的最后一個元素。

注意:pop() 方法將刪除 arrayObject 的最后一個元素,把數組長度減 1,並且返回它刪除的元素的值。如果數組已經為空,則 pop() 不改變數組,並返回 undefined 值。

var arr = new Array("js","JavaScript","jQuery");
var end = arr.pop()
console.log(end);//jQuery
console.log(arr);//["js", "JavaScript"]

二、數組的 length 屬性

var arr = new Array("js","JavaScript","jQuery");
var end = arr[arr.length-1]
console.log(end);//jQuery

三、JavaScript slice() 方法

var arr = new Array("js","JavaScript","jQuery");
var end = arr.slice(-1);
console.log(end);//["jQuery"]

淺復制slice() 方法可從已有的數組中返回選定的元素。【用負數作為參數時就表示從數組末尾開始計數。而當省略第二個可選參數時,表示一直復制到數組末尾。】

但是返回的數據類型是 array 不是 string 這點要注意一下!

 

----完----

 

 

場景:postman獲取響應的json數據

響應body

{
    "data": {
        "source": {
            "id": "default",
            "logEntriesAround": {
                "start": {
                    "time": 1575859655137,
                    "tiebreaker": 185095
                },
                "end": {
                    "time": 1575863441492,
                    "tiebreaker": 156565
                },
                "hasMoreBefore": false,
                "hasMoreAfter": false,
                "entries": [
                    {
                        "gid": "yfiO6G4B_0YZ4PEYFZ7K",
                        "key": {
                            "time": 1575859655137,
                            "tiebreaker": 185095
                        },
                        "columns": [
                            {
                                "columnId": "5e7f964a-be8a-40d8-88d2-fbcfbdca0e2f",
                                "timestamp": 1575859655137
                            },
                            {
                                "columnId": " eb9777a8-fcd3-420e-ba7d-172fff6da7a2",
                                "field": "event.dataset",
                                "value": "null"
                            },
                            {
                                "columnId": "b645d6da-824b-4723-9a2a-e8cece1645c0",
                                "message": [
                                    {
                                        "field": "message",
                                        "value": "2019-12-09 10:47:34.956  INFO [sms,e15f7fdf57ba1b8d,f767d0f88588bf1e,true] 17 --- [http-nio-8759-exec-3] com.houhan.framework.core.common.Logger  : 用戶:13800138181 的手機號的短信發送成功。內容:【安卓測試】驗證碼:969567,此驗證碼十分鍾后失效,請勿泄露給他人"
                                    }
                                ]
                            }
                        ]
                    },
                    {
                        "gid": "x_nH6G4B_0YZ4PEY2XUD",
                        "key": {
                            "time": 1575863441492,
                            "tiebreaker": 156565
                        },
                        "columns": [
                            {
                                "columnId": "5e7f964a-be8a-40d8-88d2-fbcfbdca0e2f",
                                "timestamp": 1575863441492
                            },
                            {
                                "columnId": " eb9777a8-fcd3-420e-ba7d-172fff6da7a2",
                                "field": "event.dataset",
                                "value": "null"
                            },
                            {
                                "columnId": "b645d6da-824b-4723-9a2a-e8cece1645c0",
                                "message": [
                                    {
                                        "field": "message",
                                        "value": "2019-12-09 11:50:41.290  INFO [sms,4287273b3684a879,056ea24ab9eb050f,true] 17 --- [http-nio-8759-exec-10] com.houhan.framework.core.common.Logger  : 用戶:13800138181 的手機號的短信發送成功。內容:【安卓測試】驗證碼:334327,此驗證碼十分鍾后失效,請勿泄露給他人"
                                    }
                                ]
                            }
                        ]
                    }
                ]
            }
        }
    }
}

獲取想要的內容,js代碼:

var data=JSON.parse(responseBody);
var message=data.data.source.logEntriesAround.entries.slice(-1)[0].columns.slice(-1)[0].message[0].value;
var vc="驗證碼:([0-9]{4,6})";
var vercode=message.match(vc)[1];
pm.globals.set("vercode",vercode);

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM