一般来说,“(”、“[”、“/”、“+”、“-”,都会在上一行代码不加分号的情况下,与上一行代码相接,“++”、“--”在上下两行都不加分号的情况下,与下一行代码相接,如遇上了return才会在改行末尾加上分号。
遇上了return
+ function test1(){
console.log("test1") // test1
return // 此处默认有个";"
{
console.log("这里是return") // 无输出
}
}()
+ function test2(){
console.log("test2") // test2
return console.log("这里是return") // 有输出
}()
遇上“(”、“[”、“/”、“+”、“-”,与上一行代码相接
// "(" 情况
function f(n){
return n * n;
}
// 加分号情况
var a1 = f ; // 将函数f指向a1
(5)+5; // 10
console.log(a1 ) // 函数f
// 不加分号情况
var a2 = f // 将函数f指向a2
(5)+5 // 10
console.log(a2 ) // 30
// "[" 情况
var arr = [400,300,200,100,50];
// 加分号情况
var b1 = arr;
[0];
console.log(b1) // 400,300,200,100,50
// 不加分号情况
var b2 = arr
[