Javascript中小括號有五種語義
語義1,函數聲明時參數表
復制代碼 代碼如下:
function func(arg1,arg2){
// ...
}
復制代碼 代碼如下:
// 和for in一起使用
for(var a in obj){
// ...
}
// 和if一起使用
if(boo){
//...
}
// 和while一起使用
while(boo){
// ...
}
// 和do while一起使用
do{
// ...
}while(boo)
語義3,和new一起使用用來傳值(實參)
復制代碼 代碼如下:
// 假設已經定義了類Person,它有兩個字段姓名(name),年齡(age)
var p1 = new Person('Jack',26);
復制代碼 代碼如下:
// 假設已經定義了函數func
func();
// 假設已經定義了對象obj,且擁有func方法
obj.func();
typeof(xxx);
請注意typeof后的小括號并非語義4(即不是函數調用),而是后面提到的語義5。我使用typeof一般不加后面的小括號。
語義5,強制表達式運算
關于語義5,大家最熟悉的莫過于使用eval解析JSON
復制代碼 代碼如下:
function strToJson(str){
// eval 中字符串兩旁加了強制運算符()
var json = eval('(' + str + ')');
return json;
}
復制代碼 代碼如下:
(function(){
// ...
})();
新聞熱點
疑難解答
圖片精選