chr*_*man 5 javascript ecmascript-6
tl;博士:=>做什么?
我刚刚解决了代码问题上的问题,在查看了其他人对该问题的常见反应之后,我一直看到这个: =>
问题如下:
你有箭袋,但有些已经损坏了.箭袋包含带有可选范围信息的箭头(不同类型的目标位于不同的范围内),因此每个项目都是箭头. 你需要验证你还剩下一些好的,以便为战斗做准备.下面是一个示例数组,它是箭头的箭袋.
anyArrows([
{range: 5},
{range: 10, damaged: true},
{damaged: true}
])
Run Code Online (Sandbox Code Playgroud)
如果箭袋中的箭头没有损坏状态,则表示它是新的.
这是我看到的一个返回true或false的示例,具体取决于箭头中是否有未损坏的箭头:
function anyArrows(arrows){
return arrows.some(a => !a.damaged);
}
Run Code Online (Sandbox Code Playgroud)
现在,这比我的代码短!我的基本要多得多:
function anyArrows(arrows){
for ( var i = 0 ; i < arrows.length ; i++ ){
if ( arrows[i].damaged === false ) { return true; }
else if (arrows[i].damaged === true) { return false; }
else if (arrows[i].range === 0) { return false }
else { return true; }
}
if (arrows.length === 0) return false;
}
Run Code Online (Sandbox Code Playgroud)
但问题是:=>
在这种情况下和一般情况下做了什么?
=>
是ES2015语法,用于将箭头函数参数与body分开,例如(params) => { /* body */ }
.
ArrowFunction : ArrowParameters => ConciseBody
归档时间: |
|
查看次数: |
7997 次 |
最近记录: |