尖括號是為了引入文件,例如script src="hello.js"/script引入一個hello.js文件;
成都創(chuàng)新互聯(lián)為企業(yè)級客戶提高一站式互聯(lián)網(wǎng)+設(shè)計(jì)服務(wù),主要包括成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、成都app軟件開發(fā)公司、重慶小程序開發(fā)公司、宣傳片制作、LOGO設(shè)計(jì)等,幫助客戶快速提升營銷能力和企業(yè)形象,創(chuàng)新互聯(lián)各部門都有經(jīng)驗(yàn)豐富的經(jīng)驗(yàn),可以確保每一個作品的質(zhì)量和創(chuàng)作周期,同時每年都有很多新員工加入,為我們帶來大量新的創(chuàng)意。
方括號是使用配置項(xiàng)的符號。比如一個window窗口,里面要放幾個panel,配置里面的東西用
items:[
panel1,
panel2
]
小括號和大括號是函數(shù)符號,比如 function(){},小括號里面是參數(shù),大括號里面是函數(shù)體。
不太清楚哪兩個括號 如果 function test(1){2}(3) 1括號是用來放參數(shù)的, 2括號用來放你的邏輯代碼,3括號代表當(dāng)調(diào)用test();時,會執(zhí)行里面對應(yīng)的函數(shù),若去掉();則不執(zhí)行。
這屬于js匿名函數(shù)的一種!
這種寫法可以看做是私有的內(nèi)部類,一般出于加載時就需要立即執(zhí)行的代碼可以這樣來些,第2個就是避免與其它的名稱相沖突.
給你舉個例子看看:
(function(p1,p2){alert(p1+p2);})(1,2);
實(shí)際就相當(dāng)與
function test(p1,p2){
alert(p1+p2);
}
test(1,2);
(function(){})();
匿名方法的好處,上面也有提到.
1.其它外部調(diào)用不到,相對安全.
2.可用于onload事件保證不與其沖突.
3.可看做線程安全.曾經(jīng)做項(xiàng)目時遇到過一個循環(huán)讀取值的問題,每次得到的都是第一個值,最后用該函數(shù)解決的.
下面介紹一下它的調(diào)用
var fnc = function(){alert('x');},這里function如果不賦值給fnc那么它就是一個匿名函數(shù),這種函數(shù)我們稱為回調(diào)函數(shù).調(diào)用方式fnc();
下面是匿名函數(shù)的調(diào)用。
有返回值的調(diào)用函數(shù)
得到返回值。強(qiáng)制運(yùn)算符使函數(shù)調(diào)用執(zhí)行
1
(function(p1,p2){
return p1+p2;
}(1,2));
強(qiáng)制函數(shù)直接量執(zhí)行再返回一個引用,引用在去調(diào)用執(zhí)行
2
function(p1,p2){
return p1+p2;
})(1,2);
無返回值的調(diào)用
3
void function(p1) {
return p1++;
}(2);
測試function test(){
return (function(p1,p2){
return p1+p2;
})(1,2);
//等以上幾種情況.
}
alert(test());
結(jié)果33undefined
這個是百度知道里面的另一個比較詳細(xì)的回答(原作者為:heruyi )
'abc'.match(/(a)(b)/)
是不是輸出了["ab","a" ,"b"]了
放在小括號中表示一個單獨(dú)的分組,所以整個匹配輸出一次"a",小括號中單獨(dú)的匹配再輸出一個"a"