前言
JavaScript中的语句和表达式有什么不同之处?
对于这个问题,我似乎知道答案,但当我尝试向别人解释时,我却语塞了。对于这个问题我有一种感觉,但无法清晰的表达出来。
我后来才意识到,这个问题极其重要。它可以说是房屋的承重墙,将有助于支撑大量的JavaScript知识。
对React开发者来说,更为如此。你不得不记住的那些JSX规则,以及总是忘记遵守的那些规则,大部分都是 语句/表达式 双重性的结果。
在这篇文章中,我将分享我对这两者区别的一些感悟,以及我们如何在日常工作中使用这些信息。
表达式
从本质上来说,表达式是产生值的一段JavaScript代码。
下面所有的例子全部都是表达式:
1
→ 产生值为1
"hello"
→ 产生值为"hello"
5 * 10
→ 产生值为50
num > 100
→ 产生值为true
或者false
isHappy ? "" : ""
→ 产生值为一个emoji[1, 2, 3].pop()
→ 产生值为3