[英]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.