[英]Javascript How do I split a JSON array, find the max value out of the numbers, then grab the name to go with it?
[英]how do i split numbers in a array ? javascript
我試圖拆分數組中的所有數字:
var array_code = [116,101,120,116];
所以我希望結果看起來像這樣:[1,1,6,1,0,1,1,2,0,1,1,6]
我現在正在處理的代碼如下所示:
var array_gesplit = new Array;
for(var i=0; i< array_code.length; i++){
console.log(array_code[i])
while (array_code[i]) {
array_gesplit.push(array_code[i] % 10 );
array_code[i] = Math.floor(array_code[i]/10);
}
}
我從中得到的結果是: [ 6, 1, 1, 1, 0, 1, 0, 2, 1, 6, 1, 1 ]
誰能幫我 ?
您可以Array.from()
使用Array.from()
方法:
var array_code = [116,101,120,116]; var result = Array.from(array_code.join(''), Number) console.log(result)
解釋:
array_code.join('')
創建一個類似"116101120116"
的字符串Array.from('116101120116')
在這個字符串上產生新的字符串數組,如:
["1", "1", "6", "1", "0", "1", "1", "2", "0", "1", "1", "6"]
Array.from()
與 map 函數一起使用,以便我們可以在一行中將所有這些字符串值轉換為 Number,例如:
Array.from(array_code.join(''), x => Number(x))
Array.from(array_code.join(''), Number)
您可以使用flatMap()
並將數字轉換為字符串並使用內置的split()
方法。
var array_code = [116,101,120,116]; const res = array_code.flatMap(x => x.toString().split('').map(Number)); console.log(res)
您可以使用字符串和地圖編號。
var code = [116, 101, 120, 116], result = code.flatMap(v => Array.from(v.toString(), Number)); console.log(result);
這是使用 JavaScript 語言的一些細節的黑客:
var array_code = [116, 101, 120, 116]; var array_string = JSON.stringify(array_code); var array_parts = [].slice.call(array_string); var parts = array_parts.slice(1, -1); // get rid of the square brackets console.log(parts);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.