天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

JavaScript 中級筆記 第二章

1,引用
引用是一個指向對象實際位置的指針。看下面的使用引用的例子:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
本例中,兩個對象都指向同一個對象,當修改某一個對象的屬性內容時,則會影響另一個。
我們再來看一個例子,這次我們利用數組來講解引用:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
如果在arr被重新定義后,則引用就不是同一個對象了,如下代碼所示:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
接下來我們來看一個比較特殊點的例子,關于字符串的引用問題。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
正如本例所示,在執行字符串操作時,結果總會是一個新的字符串對象,而非字符串的修改版。
不知道大家看過<<JavaScript高級程序設計>>書中的有一節講的是 傳值和傳址,說白了,就是引用。有興趣可以去看看。
JavaScript就是一門通過維護一系列對其它對象的引用的語言,通過引用,可以給程序帶來極大的靈活性。
2,函數重載
函數重載的特性就是根據傳入的不同數量或類型的參數,通過重載函數來發揮不同的功能。它必須依賴2件事情:一是判斷傳入參數的數量 ,二是判斷傳入參數的類型。
2-1,判斷傳入參數的數量
JavaScript的每個函數都帶有一個僅在這個函數范圍內作用的變量稱為參數,它是一個包含所有傳給函數的參數的偽數組,雖然有length屬性。
通過arguments,我們能夠獲取到這個偽數組。如下所示:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
arguments是一個非常有用的東西,在看下面的一個功能函數,它能將任意數量的參數轉換為數組。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
2-2,判斷傳入參數的類型
第一種判斷類型的方式:
判斷類型需要用到JavaScript中另一個操作符――typeof。 它用來表達變量內容的類型,返回的是字符串。比如如果一個變量是字符串,那么typeof后,則返回( "string" )。
經常我們會用到如下判斷:
復制代碼 代碼如下:
if( typeof num == "string" ){
num = parseInt( num );//如果是一個字符串,則把字符串解析出整數
}
if( typeof arr== "string" ){
arr= arr.split(",");//如果是一個字符串,則根據逗號來分割成數組
}

例如把前面的makeArr()函數改成只能接受字符串類型的參數,代碼如下:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
最終結果 a.length 為2,因為后面2個參數是number 類型。
第二種判斷類型的方式:
此方法需要引用所有JavaScript對象都帶有的一個屬性,構造函數――constructor。這一屬性引用的是原本用來構造該對象的那個函數。
復制代碼 代碼如下:
if( num.constructor == String ){
num = parseInt( num );//如果是一個字符串,則把字符串解析出整數
}
if( arr.constructor == String ){
arr= arr.split(",");//如果是一個字符串,則根據逗號來分割成數組
}
if( newArr.constructor == Array ){
newArr = newArr.join(",");//如果是一個數組,則根據逗號來組成字符串
}

執行constructor后的結果是一個對象,而執行typeof后的結果是一個字符串。看下表的對比:
變量 typeof 變量 變量.constructor
{a:"b"} "object" Object
["a","b"] "object" Array
function(){} "function" Function
"a" "string" String
66 "number" Number
true "boolean" Boolean
new User() "object" User
      通過對傳入參數的數量和類型的判斷,那么函數重載也就簡單了。

JavaScript技術JavaScript 中級筆記 第二章,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产成人免费观看在线视频 | 欧美中文字幕一区二区三区 | 校园女教师之禁区 | 爱很烂qvod | 巨乳中文无码亚洲 | 蝴蝶中文娱乐 | 日日操夜夜操天天操 | 一本大道手机在线看 | 国产精品路线1路线2路线 | 无人区日本电影在线观看 | 久久综合给合久久狠狠狠… | 亚洲免费视频日本一区二区 | 学生妹被爆插到高潮无遮挡 | 国产美女一区二区 | 久久精品视在线-2 | 超碰97超碰在线视频哦 | 精品国产一区二区三区久久影院 | 色偷偷亚洲天堂 | 收集最新中文国产中文字幕 | 一区三区三区不卡 | 亲爱的妈妈6韩国电影免费观看 | 日本亚洲欧洲免费旡码 | 狠狠干老司机 | 18禁裸乳无遮挡免费网站 | 国产精品人妻无码久久久2022 | 收集最新中文国产中文字幕 | 久久久国产精品免费A片蜜臀 | 2019久久这里只精品热在线观看 | bt成人社区 | 久久久高清国产999尤物 | 久久婷婷电影网 | 97久久精品人人槡人妻人 | 四房播播开心五月 | 国产日韩高清一区二区三区 | 综合伊人久久 | 3d在线看小舞被躁视频 | 玩弄放荡人妻一区二区三区 | 亚洲欧美色综合影院 | 黄色软件视频app | 日日噜噜噜噜夜夜爽亚洲精品 | 99精品视频免费在线观看 |