这个问题有点傻,但我最近一直在使用很多JS,发现自己以两种不同的方式从箭头函数中提取值。
一个是这样的:
let random_value = /* whatever */
// One way to test the value and save the result
let value = (myValue => {
if(random_value > 50) {
myValue("Bigger than 50");
} else {
myValue("Smaller than 50");
}
});
// Another way to test the value and save the result
let value_2 = (() => {
if(random_value > 50) {
return "Bigger than 50"
} else {
return "Smaller than 50"
}
})();
谁能解释一下这里的细微差别?这些方法中的一个是"属性"吗?怎么做呢?我只是想弄清楚发生了什么事。为什么两者都有效?
谢谢所有。
可以显式或隐式地从箭头函数返回值。
如果你的代码只包含一行,你可以返回隐式返回值
const fn = arg => arg
当你的代码包含多行时,你返回显式的返回值
const fn = arg => {
Do something
return arg
}
希望对你有帮助