Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 什么';这相当于ES2016或更高版本中的列表理解?_Javascript_Python_Arrays_Ecmascript 6_List Comprehension - Fatal编程技术网

Javascript 什么';这相当于ES2016或更高版本中的列表理解?

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

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}`)是为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"]