亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

你不知道的JavaScript

2i18ns / 3270人閱讀

摘要:第二章值的數(shù)組不需要預(yù)設(shè)數(shù)組大小,可以直接向數(shù)組添加任何類型的值,如果形成了稀疏數(shù)組,那么未賦值的部分將會(huì)是。某些不是數(shù)組的對(duì)象,如果其有屬性,就是類數(shù)組,例如元素列表,,通常用這個(gè)將其轉(zhuǎn)化為數(shù)組,而為我們提供了一種新途徑。

從名字上看可能會(huì)覺(jué)得JS應(yīng)該和Java是有很緊密的聯(lián)系的吧,實(shí)際上它們是兩種完全不同的語(yǔ)言,JS是ECMAScript的瀏覽器規(guī)范,是一種弱類型的語(yǔ)言,不同于Java這種強(qiáng)類型語(yǔ)言。JS簡(jiǎn)單易用,可是它的語(yǔ)言機(jī)制又是十分復(fù)雜的,我們通常對(duì)它是一知半解,深入理解其運(yùn)行機(jī)制和原理,才能得心應(yīng)手,避免各種令人抓狂問(wèn)題,例如回調(diào)地獄等。

第一章 類型

JS有七大類型,string,number,boolean,object,null,undefine,symbol(es6新增),除了object,其他都是基本類型,可以用typeof運(yùn)算符查看其對(duì)應(yīng)類型。除了typeof null === “object”//true,以外,其他六種類型都有同名的字符串值一一對(duì)應(yīng),我們常用的數(shù)組和函數(shù),他們的typeof分別是”object”和”function”,他們都有l(wèi)ength屬性,數(shù)組的length屬性是元素的個(gè)數(shù),而函數(shù)的length屬性則是參數(shù)的個(gè)數(shù)。最容易混淆的是undefined和undecleare的情況,前者是已經(jīng)定義了的但沒(méi)賦值的變量,而后者則是從沒(méi)定義過(guò)的變量,雖然在typeof中都返回undefined,但是這個(gè)區(qū)別還是值得注意。

第二章 值

JS的數(shù)組不需要預(yù)設(shè)數(shù)組大小,可以直接向數(shù)組添加任何類型的值,如果形成了稀疏數(shù)組,那么未賦值的部分將會(huì)是undefined。與數(shù)組有關(guān)的方法有push,pop,shift,unshift,sort,reverse,every,some,filter,forEach,map,concat,slice,splice等。某些不是數(shù)組的對(duì)象,如果其有l(wèi)ength屬性,就是類數(shù)組,例如DOM元素列表,arguments,通常用[].slice.call()這個(gè)將其轉(zhuǎn)化為數(shù)組,而es6為我們提供了一種新途徑——Array.from()。字符串也是類數(shù)組,有l(wèi)ength屬性,也有indexof和concat等方法,和數(shù)組很相似,在JS中字符串是不可變的,而數(shù)組是可變的,不過(guò)我們可以借用數(shù)組的非變更方法來(lái)處理字符串。

JS中只有一種數(shù)值類型——number,使用64位二進(jìn)制的雙精度格式,數(shù)字最前面的0和小數(shù)點(diǎn)中最后的0是可以省略的,特別大或者特別小的數(shù)字用指數(shù)形式表示,常用的方法有tofixed(X)——將數(shù)字保留X位小數(shù),不足用0補(bǔ)齊,toPresicion(X)——保留X位有效數(shù)字。二進(jìn)制浮點(diǎn)數(shù)最大的問(wèn)題就是0.1和0.2并不是十分精確,因此有0.1+0.2==0.3//false,最常見(jiàn)的判斷小數(shù)相等的做法是設(shè)置一個(gè)誤差范圍值(機(jī)器精度),對(duì)JS來(lái)說(shuō)是2^-52,最大安全整數(shù)是2^53-1,我們可以用a|0來(lái)將變量a中的數(shù)值轉(zhuǎn)換為32位有符號(hào)整數(shù)。數(shù)字類型中有幾個(gè)特殊的值我們需要注意,NaN——不是一個(gè)數(shù)字,可以理解為無(wú)效值,它和本身不相等,即NaN===NaN//false,無(wú)窮數(shù)——+Infinity和-Infinity,計(jì)算結(jié)果溢出時(shí)出現(xiàn)。

簡(jiǎn)單的基本類型通過(guò)值復(fù)制來(lái)賦值或者傳遞,而復(fù)合值(對(duì)象等)則會(huì)通過(guò)引用復(fù)制來(lái)復(fù)制或傳遞,值復(fù)制相當(dāng)于是處理原值的一個(gè)副本,而引用復(fù)制相當(dāng)于是將原值的地址傳給了新的引用。

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/93397.html

相關(guān)文章

  • 你不知道JavaScript》 (下) 閱讀摘要

    摘要:本書(shū)屬于基礎(chǔ)類書(shū)籍,會(huì)有比較多的基礎(chǔ)知識(shí),所以這里僅記錄平常不怎么容易注意到的知識(shí)點(diǎn),不會(huì)全記,供大家和自己翻閱不錯(cuò),下冊(cè)的知識(shí)點(diǎn)就這么少,非常不推介看下冊(cè)上中下三本的讀書(shū)筆記你不知道的上讀書(shū)筆記你不知道的中讀書(shū)筆記你不知道的下讀書(shū)筆記第三 本書(shū)屬于基礎(chǔ)類書(shū)籍,會(huì)有比較多的基礎(chǔ)知識(shí),所以這里僅記錄平常不怎么容易注意到的知識(shí)點(diǎn),不會(huì)全記,供大家和自己翻閱; 不錯(cuò),下冊(cè)的知識(shí)點(diǎn)就這么少,非...

    Jacendfeng 評(píng)論0 收藏0
  • JS編譯之 LHS RHS(你不知道JavaScript 小記一)

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

    Cristic 評(píng)論0 收藏0
  • 你不知道JavaScript》 (上) 閱讀摘要

    摘要:但是如果非全局的變量如果被遮蔽了,無(wú)論如何都無(wú)法被訪問(wèn)到。但是如果引擎在代碼中找到,就會(huì)完全不做任何優(yōu)化。結(jié)構(gòu)的分句中具有塊級(jí)作用域。第四章提升編譯器函數(shù)聲明會(huì)被提升,而函數(shù)表達(dá)式不會(huì)被提升。 本書(shū)屬于基礎(chǔ)類書(shū)籍,會(huì)有比較多的基礎(chǔ)知識(shí),所以這里僅記錄平常不怎么容易注意到的知識(shí)點(diǎn),不會(huì)全記,供大家和自己翻閱; 上中下三本的讀書(shū)筆記: 《你不知道的JavaScript》 (上) 讀書(shū)筆記...

    FingerLiu 評(píng)論0 收藏0
  • 重讀你不知道JS (上) 第一節(jié)三章

    摘要:如果是聲明中的第一個(gè)詞,那么就是一個(gè)函數(shù)聲明,否則就是一個(gè)函數(shù)表達(dá)式。給函數(shù)表達(dá)式指定一個(gè)函數(shù)名可以有效的解決以上問(wèn)題。始終給函數(shù)表達(dá)式命名是一個(gè)最佳實(shí)踐。也有開(kāi)發(fā)者干脆關(guān)閉了靜態(tài)檢查工具對(duì)重復(fù)變量名的檢查。 你不知道的JS(上卷)筆記 你不知道的 JavaScript JavaScript 既是一門(mén)充滿吸引力、簡(jiǎn)單易用的語(yǔ)言,又是一門(mén)具有許多復(fù)雜微妙技術(shù)的語(yǔ)言,即使是經(jīng)驗(yàn)豐富的 Ja...

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

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

    史占廣 評(píng)論0 收藏0
  • 你不知道javascript》筆記_this

    下一篇:《你不知道的javascript》筆記_對(duì)象&原型 寫(xiě)在前面 上一篇博客我們知道詞法作用域是由變量書(shū)寫(xiě)的位置決定的,那this又是在哪里確定的呢?如何能夠精準(zhǔn)的判斷this的指向?這篇博客會(huì)逐條闡述 書(shū)中有這樣幾句話: this是在運(yùn)行時(shí)進(jìn)行綁定的,并不是在編寫(xiě)時(shí)綁定,它的上下文取決于函數(shù)調(diào)用時(shí)的各種條件this的綁定和函數(shù)聲明的位置沒(méi)有任何關(guān)系,只取決于函數(shù)的調(diào)用方式當(dāng)一個(gè)函數(shù)被調(diào)用時(shí)...

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

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

0條評(píng)論

2i18ns

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<