我有一个包含两个字符串的数组:例如"1"one_answers"5"。我想把这两个字符串保存到参数中,但已经是整数了。目前,代码如下:
const data = ['1', '5'];
const [min_str, max_str] = data;
const min = parseInt(min_str, 10);
const max = parseInt(max_str, 10);
console.log(typeof min_str, typeof max_str, typeof min, typeof max)
是否有一种方法可以将此代码简化为一行,以便parseInt已经应用于min_str和max_str?
您可以在破坏之前映射数据
const [min, max] = data.map(d => parseInt(d, 10));
也许您可以使用map()
const [min_str, max_str] = data.map(x => parseInt(x, 10));
如果字符串只是字符串中的数字。您也可以使用Number
const [min_str, max_str] = data.map(Number);
您可以使用Math
方法获得最小值和最大值。
此方法不依赖于数组的顺序,也不期望只有两个值
const
data = ['1', '5'],
[min, max] = ['min', 'max'].map(k => Math[k](...data));
console.log(min, max);
您可以使用Number
映射数据
const [min, max] = ["1", "5"].map(Number);
console.log(min, max);
const[min_str,max_str]=data.map(a=>parseInt(a,10));