欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解析Javascript小括號“()”的多義性

 更新時間:2013年12月03日 08:49:42   作者:  
這篇文章主要介紹了Javascript小括號“()”的多義性。需要的朋友可以過來參考下,希望對大家有所幫助

Javascript中小括號有五種語義

語義1,函數(shù)聲明時參數(shù)表

復(fù)制代碼 代碼如下:

function func(arg1,arg2){
  // ...
}

語義2,和一些語句聯(lián)合使用以達(dá)到某些限定作用
復(fù)制代碼 代碼如下:

// 和for in一起使用
for(var a in obj){
  // ...
}

// 和if一起使用
if(boo){
  //...
}

// 和while一起使用
while(boo){
  // ...
}

// 和do while一起使用
do{
  // ...
}while(boo)

注意:在與if、while及do while一起使用時小括號會將其中的表達(dá)式結(jié)果隱式的轉(zhuǎn)換成布爾值。見 JavaScript中的隱式類型轉(zhuǎn)換 。

語義3,和new一起使用用來傳值(實(shí)參)

復(fù)制代碼 代碼如下:

// 假設(shè)已經(jīng)定義了類Person,它有兩個字段姓名(name),年齡(age)
var p1 = new Person('Jack',26);

語義4,作為函數(shù)或?qū)ο蠓椒ǖ恼{(diào)用運(yùn)算符(如果定義了參數(shù)也可與語義3一樣傳實(shí)參)
復(fù)制代碼 代碼如下:

// 假設(shè)已經(jīng)定義了函數(shù)func
func();

// 假設(shè)已經(jīng)定義了對象obj,且擁有func方法
obj.func();

這里提下typeof運(yùn)算符,有人喜歡這么使用

typeof(xxx);

請注意typeof后的小括號并非語義4(即不是函數(shù)調(diào)用),而是后面提到的語義5。我使用typeof一般不加后面的小括號。

語義5,強(qiáng)制表達(dá)式運(yùn)算

關(guān)于語義5,大家最熟悉的莫過于使用eval解析JSON

復(fù)制代碼 代碼如下:

function strToJson(str){
     // eval 中字符串兩旁加了強(qiáng)制運(yùn)算符()
     var json = eval('(' + str + ')'); 
     return json;
}

又如使用較多的是匿名函數(shù)自執(zhí)行
復(fù)制代碼 代碼如下:

(function(){
  // ...
})();

相關(guān)文章

  • 使用mpvue搭建一個初始小程序及項(xiàng)目配置方法

    使用mpvue搭建一個初始小程序及項(xiàng)目配置方法

    這篇文章主要介紹了使用mpvue搭建一個初始小程序及項(xiàng)目配置方法,需要的朋友可以參考下
    2018-12-12
  • js實(shí)現(xiàn)導(dǎo)航跟隨效果

    js實(shí)現(xiàn)導(dǎo)航跟隨效果

    這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)導(dǎo)航跟隨效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • javascript數(shù)組的擴(kuò)展實(shí)現(xiàn)代碼集合

    javascript數(shù)組的擴(kuò)展實(shí)現(xiàn)代碼集合

    非常不錯的javascript數(shù)據(jù)功能增強(qiáng)函數(shù)
    2008-06-06
  • JavaScript數(shù)組reduce常見實(shí)例方法

    JavaScript數(shù)組reduce常見實(shí)例方法

    reduce方法在數(shù)組的每個元素上執(zhí)行用戶提供的回調(diào)函數(shù),即"reducer",它傳入對前一個元素進(jìn)行計(jì)算的返回值,結(jié)果是單個值,它是在數(shù)組的所有元素上運(yùn)行reducer的結(jié)果,下面這篇文章主要給大家介紹了關(guān)于JavaScript數(shù)組reduce常見實(shí)例方法的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • antd/fusion表格增加圈選復(fù)制功能思路詳解

    antd/fusion表格增加圈選復(fù)制功能思路詳解

    我們存在著大量在PC頁面通過表格看數(shù)據(jù)業(yè)務(wù)場景,表格又分為兩種,一種是antd?/?fusion這種基于dom元素的表格,另一種是通過?canvas?繪制的類似?excel?的表格,這篇文章主要介紹了antd/fusion表格增加圈選復(fù)制功能,需要的朋友可以參考下
    2023-09-09
  • 微信小程序開發(fā)之toast等彈框提示使用教程

    微信小程序開發(fā)之toast等彈框提示使用教程

    彈框提示是我們在開發(fā)中經(jīng)常用的一個效果,下面這篇文章主要給大家介紹了微信小程序開發(fā)之toast等彈框提示實(shí)現(xiàn)的相關(guān)資料,文中介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。
    2017-06-06
  • JavaScript用構(gòu)造函數(shù)如何獲取變量的類型名

    JavaScript用構(gòu)造函數(shù)如何獲取變量的類型名

    在JavaScript中,如何準(zhǔn)確獲取變量的類型名是一個經(jīng)常使用的問題。但是常常不能獲取到變量的精確名稱,或者必須使用jQuery 中的方法,這里通過 typeof ,jQuery.type 和 通過構(gòu)造函數(shù)來獲取變量類型這三種方法詳細(xì)介紹一遍。有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2016-12-12
  • Javascript中arguments對象的詳解與使用方法

    Javascript中arguments對象的詳解與使用方法

    ECMAScript中的函數(shù)并不介意傳遞的參數(shù)有多少,也不介意是什么類型。由于JavaScript允許函數(shù)有不定數(shù)目的參數(shù),所以我們需要一種機(jī)制,可以在 函數(shù)體內(nèi) 部讀取所有參數(shù)。這就是arguments對象的由來。這篇文章將詳細(xì)介紹Javascript中的arguments對象和使用方法。
    2016-10-10
  • 詳談JavaScript 匿名函數(shù)及閉包

    詳談JavaScript 匿名函數(shù)及閉包

    本文詳細(xì)介紹了匿名函數(shù)、閉包、并給出了詳細(xì)的例子以及詳細(xì)的注意事項(xiàng),是篇非常非常不錯的文章,推薦給大家。
    2014-11-11
  • JavaScript宏任務(wù)和微任務(wù)區(qū)別介紹

    JavaScript宏任務(wù)和微任務(wù)區(qū)別介紹

    這篇文章主要介紹了JavaScript宏任務(wù)和微任務(wù)區(qū)別介紹,js中的任務(wù),大致分為2類,一類是同步任務(wù),另一類是異步任務(wù)。而異步任務(wù),又分為宏任務(wù)和微任務(wù),這兩個任務(wù)是兩個隊(duì)列,所以是先進(jìn)先出的
    2022-07-07

最新評論