簡體   English   中英

粗箭頭符號和常規功能

[英]fat arrow notation and regular function

常規功能:

function square(number) {
  return number.map(function (x) {
    return Math.pow(x, 2);
  });
}

粗箭頭:

let square = (number) => {
  return number.map(function(x) {
    return Math.pow(x, 2);
  });
}

粗箭頭正確嗎? 還是我錯過了什么?

是的,這是正確的。 您可以在任何解釋器中對此進行測試,包括此處的Stack Overflow:

 let square = (number) => { return number.map(function(x) { return Math.pow(x, 2); }); } result.value = square([1,2,3,4]); 
 <output id="result"></output> 

你的例子是正確的。

let square = (number) => {
  return number.map(function(x) {
    return Math.pow(x, 2);
  });
}

如果只有1個參數,也可以省略括號。

let square = number => {
  return number.map(function(x) {
    return Math.pow(x, 2);
  });
}

為什么不在lambda中使用lambda?

let square = number => {
  return number.map( x => {
    return Math.pow(x, 2);
  });
}

您也可以刪除花括號並使用默認返回值(如果它是單個表達式)。

let square = number => number.map(x => Math.pow(x, 2));

最后,我們通過使用lambda作為參數並省略粗箭頭來對其進行清理。 這是一個易於閱讀,可擴展,可重用且非常簡潔的工具。

let power2 = x => Math.pow(x,2)
let square = number => number.map(power2);

工作片段。

 let power2 = x => Math.pow(x,2) let square = number => number.map(power2); console.log(square([4,5,6])) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM