簡體   English   中英

將數組轉換為不同的類型(lodash / js)

[英]converting array to different types (lodash/js)

在逐個基礎上轉換數組中每個元素類型最直接的方法是什么?

例如,如果我有:

var a = ["2013", "72", "68", "76", "75", "76", "73"]

我怎樣才能將a轉換為以下內容,將第一個項保持為字符串並將其余項轉換為整數:

["2013", 72, 68, 76, 75, 76, 73]

在lodash中,我可以管理_.map(_.values(record), _.toNumber)將整個數組轉換為數字,但是如何映射到數組中的每個項目?

使用Array#map和循環索引。

 var a = ["2013", "72", "68", "76", "75", "76", "73"]; a = a.map(function (b, i) { return i ? Number(b) : b; }); console.log(a); 

使用lodash方法maptoNumber並檢查不是數組中的第一個:

 var a = ["2013", "72", "68", "76", "75", "76", "73"]; var result = _.map(a, function(v) { return a[0] !== v ? _.toNumber(v) : v; }); console.log(result); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.12.0/lodash.min.js"></script> 

這樣的事情可能是:

 var a = ["2013", "72", "68", "76", "75", "76", "73"] var newArray = []; a.map(function(d, i) { if (i == 0) { newArray.push(d) } else { newArray.push(parseInt(d, 10)) } return newArray }) console.log(newArray) 

 var a = ["2013", "72", "68", "76", "75", "76", "73"] var b = a.map(function(item) { if (item.length === 4) { return item; } else { return parseInt(item, 10); } }); console.log(b) 

暫無
暫無

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

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