RT ,这俩有啥区别吗?
比如
useMemo(() => subscription(x), [x]);
比如
useMemo(() => subscription(x), [x]);
|
kkll7766Nov 20, 2022
1
|
|
qeqvNov 20, 2022
2
问之前不自己试一下吗?
|
|
horseInBlackNov 20, 2022
4
// 箭头函数的一般写法
const arrowFunction1 = () => { return 123; }; // 如果函数只有一个返回值,可以在箭头后只写返回值 const arrowFunction2 = () => 123; // 如果返回值类型为对象,对象的括号会和函数体的括号冲突,这时候可以用圆括号包住花括号 const arrowFunction3 = () => ({ a: "hello", }); |
|
netnrNov 20, 2022
5
{} 可以写复杂的逻辑再 return
|
|
sweetcolaNov 20, 2022
6
区别就是第一种简洁,好看,写起来会比第二种爽,有种畅快清凉感
|
|
buxudashiNov 20, 2022
7
区别就是。当有多行时。用后面的。当有一行时,简写为第一个。
你学废了吗 |
|
justin2018Nov 20, 2022
8
箭头函数 - JavaScript | MDN
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/Arrow_functions#%E5%87%BD%E6%95%B0%E4%BD%93 在一个简写体中,只需要一个表达式,并附加一个隐式的返回值。在块体中,必须使用明确的 return 语句。 |
|
Justin13Nov 20, 2022 via Android
9
没区别,后者方便打断点
|
|
sankemaoNov 20, 2022 via iPhone
10
我喜欢后面的
|
|
yaphets666Nov 21, 2022
11
有区别的,如果 X 是{1:2},第一种就不行了,需要加()
|
|
libookNov 21, 2022
12
题主的意思是问箭头函数右侧是用表达式和用块的区别吗?
程序上没啥区别,用表达式也是隐含有一个块级作用域并自动 returen ,也就是说实际上表达式写法会被处理成块写法。需要注意的是,右侧代码被解析成函数块的优先级高于 JSON 块,也就是说如果你要用表达式写法返回一个 JSON ,得外面套个括号,比如 ()=>({a:1}) 。 其余的就是可读性问题了,如果你打算在箭头函数后面拼接三元运算符之类的,可能读起来会比较难理解。 |
|
xingguangNov 21, 2022
13
就是简洁一些,如果返回的是个对象还可以这样写
```js () => ({ x:'xxx' }); ``` |