写这篇随笔之前我要先介绍一下块级作用域 (此篇文章只适合初学者)
js中什么叫做块作用域呢
大家看到有一些将代码块包裹在花括号里,像这样
{
var a = 10
console.log(10)
}
var a = 10
console.log(10)
上面写法其实就是块级,和正常写法没什么两样
---------------------------------------------------------------------------
我想引出的观点就是花括号的作用
其实就是分类,分组,将一类代码放进去,进行区别,其他作用不是很大es5
大家看到这里肯定会想,那这样有鸡儿用啊,请接着看,我相信对初学者肯定有帮助的
当大家进行if判断时会看到这个花括号
if(判断语句){表达式}
加和不加到底有啥区别啊(马上大家就可以懂了)
判断为真,没有花括号
if(true) console.log('执行第一行') console.log('执行第二行') console.log('执行第三行')
这里执行了第一行,第二行,第三行
-----------------------------------------------------------
判断为假,没有花括号
if(false) console.log('执行第一行') console.log('执行第二行') console.log('执行第三行')
这里执行了:第二行和第三行,没有执行第一行
-----------------------------------------------------------
判断为假,有花括号
if(false){ console.log('执行第一行') console.log('执行第二行') console.log('执行第三行') }
这里哪一行都没有执行
总结:
1.花括号代码块其实就是分类作用,在这个花括号里的代码,要么都执行,要么都不执行
2.if判断语句只会对其后面的第一条语句起作用,不会影响后面整个代码的执行
其实这个结论有点偏向if判断语句,但是对花括号代码块也是起到了一点点帮助
至于这里我把它叫代码块,又是块级作用域的是因为es6里有这么个说法,希望对初学者有些帮助!