节点javascript数组解构与自定义应用函数



我有一个包含两个字符串的数组:例如"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_strmax_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));

最新更新