我正在開發一個在線工具以在有組織的儀表板界面中顯示信息。 我正在從CSV電子表格中提取數據,並根據整個CSV數據陣列中的一個字段將它們分離到另一個多維數組中。根據值循環並將CSV數據分離到輔助數組中
這是我曾嘗試:
// arr is the array that holds the entire CSV data
// inds is where I need the entries separated by industry (arr[i][0])
var indx = 0; // using to add new array to inds array
for(var i = 1; i < arr.length-1; i++){
if(arr[i][0] === arr[i-1][0]) {
if(! inds[indx]) {
inds[indx] = []
} else {
inds[indx].push(arr[i]);
}
} else {
indx++;
}
}
基本上就是這樣做:
如果行業領域是一樣的條目之前,扔到ARR數組索引indx
,否則,爲下一個行業增加一個indx
。
這個解決方案的問題:
它跳過了行業的第一個條目,因爲該行之前是一個不同的行業,所以arr[i-1][0]
被檢查上次行業將跳過下一業的第一行。
我怎樣才能重新格式化該腳本:
我想也許嵌套的/時間,但不能肯定。我想到的邏輯是:
對於csv的每一行,雖然行業欄是相同的,折騰到各自inds[index]
。或者,從arr中提取相同的值爲arr[i][0]
的行。
我相信有一個更簡單的解決方案,這就是爲什麼我在這裏,所以我希望我清楚地瞭解我的想法,我很欣賞任何和所有的反饋。
如果您需要更多解釋,請在評論中告訴我。
在這些語言中沒有「multiD數組」你只能嵌套數組(嚴格地說,數組的元素可以是對另一個數組實例的引用),這是不同的事情。從你的描述中我不清楚代碼是打算做什麼*。請提供預期輸入和輸出數據的示例,以便可以建議解決問題而不是修復代碼。 – PointedEars