成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

你不知道的JavaScript(二)

macg0406 / 1661人閱讀

摘要:第三章原生函數(shù)有很多原生函數(shù),為基本的數(shù)據(jù)類型值提供了封裝對(duì)象,,,等。我們可以通過(guò)來(lái)查看所有返回的對(duì)象的內(nèi)置屬性這個(gè)屬性無(wú)法直接訪問(wèn)。這個(gè)符號(hào)能有奇妙的功能,可以視為。通常用來(lái)把轉(zhuǎn)換為數(shù)字,用來(lái)將轉(zhuǎn)換為字符串,用來(lái)將取整。

第三章 原生函數(shù)
JS有很多原生函數(shù),為基本的數(shù)據(jù)類型值提供了封裝對(duì)象,String,Number,Boolean等。我們可以通過(guò){}.call.toString()來(lái)查看所有typeof返回object的對(duì)象的內(nèi)置屬性[[class]],這個(gè)屬性無(wú)法直接訪問(wèn)。我們基本類型調(diào)用的方法和屬性都是通過(guò)封裝對(duì)象去訪問(wèn)的,例如var a = “abc”; a.length//3,但是有一點(diǎn)需要注意的是new Boolean(false)//true,為false封裝對(duì)象時(shí),它是一個(gè)真值(即總是返回true),平時(shí)在用到封裝對(duì)象中的基本類型值的時(shí)候,JS會(huì)發(fā)生隱式拆封。

第四章 強(qiáng)制類型轉(zhuǎn)換

強(qiáng)制類型轉(zhuǎn)換是JS里難以掌握的,但是在實(shí)際應(yīng)用中它又是很有用處的,我們十分有必要去深入理解和合理運(yùn)用它。類型轉(zhuǎn)換有顯式和隱式之分,后者就是強(qiáng)制類型轉(zhuǎn)換,例如var a = 42; var b = a + “”;//“42”,這里數(shù)字a被轉(zhuǎn)換為了字符串b。

非字符串轉(zhuǎn)換為字符串,在沒(méi)有自行定義的情況下,普通對(duì)象調(diào)用toString方法返回內(nèi)部的[[Class]]值,JSON.Stringfy函數(shù)在將對(duì)象序列化為字符串時(shí),如果定義了toJSON方法就會(huì)首先調(diào)用該方法,用返回值進(jìn)行序列化,在數(shù)組中如果遇到undefined,空f(shuō)unction,那么會(huì)在對(duì)應(yīng)位置返回null以保證單元位置不變。
在將非數(shù)字值轉(zhuǎn)換為數(shù)字時(shí)就會(huì)進(jìn)行ToNumber操作,false轉(zhuǎn)換為0,true轉(zhuǎn)換為1,undefined轉(zhuǎn)換為NaN,null轉(zhuǎn)換為0,對(duì)于對(duì)象來(lái)說(shuō),會(huì)首先調(diào)用valueOf,沒(méi)有就調(diào)用toString來(lái)返回基本類型,然后再?gòu)?qiáng)制轉(zhuǎn)換為數(shù)字值,如果均不返回?cái)?shù)字,則會(huì)報(bào)錯(cuò)。

轉(zhuǎn)換為布爾值時(shí),從邏輯上說(shuō),出現(xiàn)在假值列表上的才為假值,+0,-0,infinite,null,undefined,””,NaN等,要特別注意的是這些假值封裝的對(duì)象是真值(所有對(duì)象都是真值),除了””以外的字符串也都是真值。
~這個(gè)符號(hào)能有奇妙的功能,~X可以視為-(X+1)。通常用+X來(lái)把X轉(zhuǎn)換為數(shù)字,用X+””來(lái)將X轉(zhuǎn)換為字符串,用X|0來(lái)將X取整。

對(duì)于+運(yùn)算符,先是調(diào)用toString進(jìn)行字符串拼接,如果不行就用valueOf轉(zhuǎn)換為數(shù)字,進(jìn)行加法操作。
對(duì)于比較運(yùn)算,數(shù)字和字符串比較先轉(zhuǎn)化為數(shù)字,如果有布爾類型就將布爾類型轉(zhuǎn)換為數(shù)字,字符串或數(shù)字和對(duì)象比較,先把對(duì)象用toString,valueOf轉(zhuǎn)換為字符串或者數(shù)字。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/93425.html

相關(guān)文章

  • JS編譯之 LHS RHS(你不知道JavaScript 小記一)

    摘要:關(guān)于兩個(gè)專業(yè)術(shù)語(yǔ)的討論起自對(duì)你不知道的一書的閱讀學(xué)習(xí)。遇到,編譯器會(huì)詢問(wèn)作用域是否已經(jīng)有一個(gè)該名稱的變量存在于同一個(gè)作用域的集合中。摘錄來(lái)自你不知道的。 JS 編譯之 LHS RHS 一、前言 最近和朋友聊技術(shù)的時(shí)候,聊到 LHS RHS,我竟然沒(méi)聽說(shuō)過(guò) 沒(méi)聽說(shuō)過(guò)。。。 于是成功引起了我的好奇心。 關(guān)于兩個(gè)專業(yè)術(shù)語(yǔ)的討論起自對(duì)《你不知道的JavaScript》一書的閱讀學(xué)習(xí)。 二、編譯...

    Cristic 評(píng)論0 收藏0
  • JavaScript 你不知道基本包裝類型

    摘要:你不知道的基本包裝類型聲明本文的大部分內(nèi)容參考自高級(jí)程序設(shè)計(jì)第三版中文版,中間夾雜一些自己閱讀這部分內(nèi)容時(shí)的思路。而且,上面的步驟同樣適用于類型的類型對(duì)應(yīng)的布爾值和數(shù)字值。 JavaScript 你不知道的基本包裝類型 聲明:本文的大部分內(nèi)容參考自《JavaScript 高級(jí)程序設(shè)計(jì)(第三版)》(中文版 P.118),中間夾雜一些自己閱讀這部分內(nèi)容時(shí)的思路。 JavaScript 中共...

    xingpingz 評(píng)論0 收藏0
  • 你不知道JavaScript : 類型

    摘要:你不知道的系列第一章類型類型一中的類型中的變量是不存在類型的,只有具體的值才有類型。 你不知道的JavaScript系列---第一章:類型 類型 一、JavaScript中的類型 JavaScript中的變量是不存在類型的,只有具體的值才有類型。 Js不像其他高級(jí)語(yǔ)言,如java等,聲明了一個(gè)int類型的變量,就必須存放int類型的值,Js中的變量可以存放其允許的所有類型的值,如: ...

    史占廣 評(píng)論0 收藏0
  • 你不知道this

    摘要:本內(nèi)容來(lái)自你不知道的上卷,做了簡(jiǎn)單的總結(jié)。如果不使用這段代碼該如何寫呢那就需要給和顯示傳入一個(gè)上下文對(duì)象對(duì)比發(fā)現(xiàn)提供了額一種更優(yōu)雅的方式來(lái)隱式傳遞一個(gè)對(duì)象引用。四總結(jié)隨著你使用的模式越來(lái)越復(fù)雜,顯式傳遞上下文對(duì)象會(huì)讓代碼變得越來(lái)越混亂。 本內(nèi)容來(lái)自《你不知道的JavaScript(上卷)》,做了簡(jiǎn)單的總結(jié)。 this關(guān)鍵字是javascript最復(fù)雜的機(jī)制之一。它是一個(gè)很特別的關(guān)鍵字,...

    terasum 評(píng)論0 收藏0
  • 你不知道CSS(

    摘要:用來(lái)控制表格單元格寬度你也許遇到過(guò)給表格設(shè)置了寬度,但是不起作用的問(wèn)題。這是因?yàn)閱卧竦膶挾仁歉鶕?jù)其內(nèi)容進(jìn)行調(diào)整的。顯而易見的,默認(rèn)情況下,單元格寬度受其內(nèi)容約束。而設(shè)置了后,其單元格寬度變得可控了。 本文首發(fā)于我的博客在上文《你不知道的CSS(一)》中,介紹了兄弟選擇器美化表單,font-size:0消除間隙,overflow清除浮動(dòng),border繪制三角形等7個(gè)實(shí)用技巧。由于文章長(zhǎng)...

    sewerganger 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<