簡體   English   中英

如何通過循環獲取數組元素的索引

[英]How to get index of array elements by looping through

我正在嘗試獲取數組元素的索引。 我將把它用於 Leetcode 問題“按給定順序創建目標數組”。

現在我寫了下面的代碼,但它不起作用。 (返回未定義)

var createTargetArray = function(nums) {    

    for(var i=0; i<nums.length; i++) {
        console.log(nums.indexOf[i])
    }

};

const num = [1,2,3,4,0,108];
createTargetArray(num);

該代碼的預期輸出:[0, 1, 2, 3, 4, 5]

我是否錯誤地使用了 indexOf 方法?

要獲取數字的索引,您必須將indexOf作為函數調用( indexOf(i) )而不是數組訪問器( indexOf[i] )調用

嘗試運行下面的代碼片段進行檢查。

 var createTargetArray = function(nums) { for(var i=0; i<nums.length; i++) { console.log(nums.indexOf(i)) } }; const num = [1,2,3,4,0,108]; createTargetArray(num);

如果你想要 exery 編號的索引,那只是你的變量i 您不需要調用indexOf方法。

 var createTargetArray = function(nums) { for(var i=0; i<nums.length; i++) { console.log(i) } }; const num = [1,2,3,4,0,108]; createTargetArray(num);

var createTargetArray = function(nums) {    
    for(var i=0; i<nums.length; i++) {
        console.log(nums.indexOf[i]) // <--mistake
    }
};

indexOf是一種方法

console.log(nums.indexOf(nums[i]));

但是由於您正在按順序循環遍歷數組,因此輸出將始終為 [0, 1, 2, ... n]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM