Javascript 什么';这相当于ES2016或更高版本中的列表理解?
Python 3.6:Javascript 什么';这相当于ES2016或更高版本中的列表理解?,javascript,python,arrays,ecmascript-6,list-comprehension,Javascript,Python,Arrays,Ecmascript 6,List Comprehension,Python 3.6: [f“Cat#{n}”表示范围(5)内的n] 给予 [“猫0”、“猫1”、“猫2”、“猫3”、“猫4”] JavaScript新手,新EcmaScript中的等价物是什么?JavaScript中没有这么可爱的东西。据我所知,您需要创建一个新的数组,并使用.fill()使每个元素都不是未定义的。然后可以使用.map返回/使用数组索引而不是值。大概是这样的: JS中的console.log((新数组(5)).fill(0).map((x,i)=>`Cat${i}`)是为ES
[f“Cat#{n}”表示范围(5)内的n]
给予
[“猫0”、“猫1”、“猫2”、“猫3”、“猫4”]
JavaScript新手,新EcmaScript中的等价物是什么?JavaScript中没有这么可爱的东西。据我所知,您需要创建一个新的数组,并使用
.fill()
使每个元素都不是未定义的
。然后可以使用.map
返回/使用数组索引而不是值。大概是这样的:
JS中的console.log((新数组(5)).fill(0).map((x,i)=>`Cat${i}`)是为ES2016提出的,但从未进入最终版本。Firefox一度支持理解,但后来的版本中不再支持理解
你可以用它来接近理解
const result=Array.from({length:5},({uu,k)=>`Cat}${k});
控制台日志(结果)代码>使用和的组合
ES2015:
[...(function*(){for(let n=0;n<5;)yield'Cat #'+n++})()]
console.log([…数组(5)].map((v,i)=>`Cat#${i}')
这是对数组的巧妙使用!出于某种原因,在Chrome/Firefox中,Array.fill.map速度更快,但可读性更高。这是否回答了您的问题?
["Cat #0", "Cat #1", "Cat #2", "Cat #3", "Cat #4"]