摘要:基本類(lèi)型有六種,,,,,。類(lèi)型是類(lèi)數(shù)組,具有基礎(chǔ)類(lèi)型檢測(cè)檢測(cè)基礎(chǔ)類(lèi)型用只適合檢測(cè)基礎(chǔ)類(lèi)型基礎(chǔ)類(lèi)型轉(zhuǎn)換基本類(lèi)型轉(zhuǎn)換時(shí),首先會(huì)調(diào)用,然后調(diào)用。該方法在轉(zhuǎn)基本類(lèi)型時(shí)調(diào)用優(yōu)先級(jí)最高。
夯實(shí)Javascript基礎(chǔ)。
基本類(lèi)型有六種: null,undefined,boolean,number,string,symbol。
基本類(lèi)型的值是保存在棧內(nèi)存中的簡(jiǎn)單數(shù)據(jù)段
基礎(chǔ)類(lèi)型特性基礎(chǔ)類(lèi)型最重要的特性
基礎(chǔ)類(lèi)型是不變的
因此:基礎(chǔ)類(lèi)型沒(méi)有splice,sort之類(lèi)的直接改變變量的方法
強(qiáng)行改變基礎(chǔ)類(lèi)型會(huì)報(bào)錯(cuò)
// str 不能調(diào)用 Array的 sort 和 splice Array.prototype.sort.call("strxyz"); // Uncaught TypeError: Cannot assign to read only property "2" of object "[object String]" Array.prototype.splice.call("strxyz"); // Uncaught TypeError: Cannot assign to read only property "length" of object "[object String]" // object 可以使用 Array的sort 和 splice Array.prototype.sort.call({x: 1, y: 2}); // {x: 1, y: 2} Array.prototype.splice.call({x: 1, y: 2}); // []
基礎(chǔ)類(lèi)型沒(méi)有__proto__沒(méi)有屬性
str.x = 1; console.log(str.x); // undefined
所有對(duì)基礎(chǔ)類(lèi)型屬性的訪問(wèn)都是訪問(wèn)的基本包裝類(lèi)型 (String、Number、Boolean)
當(dāng)你調(diào)用 `str.length` 時(shí),實(shí)際過(guò)程是這樣的: -> 創(chuàng)建String類(lèi)型的一個(gè)實(shí)例 -> 在實(shí)例上調(diào)用指定的方法 -> 銷(xiāo)毀這個(gè)實(shí)例 var str = "abc"; var _str = new String(str); var len = _str.length; _str = null; console.log(len);
其他特性
typeof null === "object"
(歷史遺留問(wèn)題,因?yàn)?00開(kāi)頭表示對(duì)象,而null全是0)
條件判斷時(shí) undefined null false NaN "" 0 -0 為 false,其他都為 true
(條件判斷時(shí)會(huì)隱式轉(zhuǎn)換為Boolean)
JS只有浮點(diǎn)類(lèi)型(double),沒(méi)有整型
1 === 1.0
NaN 也屬于 number 類(lèi)型,并且 NaN 不等于自身。
var a = NaN; a !== a;
String 類(lèi)型是類(lèi)數(shù)組,具有iterator
typeof String("x")[Symbol.iterator] === "function"
基礎(chǔ)類(lèi)型檢測(cè)檢測(cè)基礎(chǔ)類(lèi)型用 typeof
// typeof 只適合檢測(cè) 基礎(chǔ)類(lèi)型 typeof new Date() // "object" typeof [] // "object" typeof {} // "object" typeof console.log // "function"基礎(chǔ)類(lèi)型轉(zhuǎn)換
基本類(lèi)型轉(zhuǎn)換時(shí),首先會(huì)調(diào)用 valueOf,然后調(diào)用 toString。并且這兩個(gè)方法可以重寫(xiě)。
var a = 1; var obj = {x: 1}; obj.toString === "[object Object]"; var arr = [2, 3]; arr.toString() === "2,3"; a + obj === "1[object Object]"; a + arr === "12,3";
Symbol.toPrimitive該方法在轉(zhuǎn)基本類(lèi)型時(shí)調(diào)用優(yōu)先級(jí)最高。
let a = { valueOf() { return 1; }, toString() { return "2"; }, [Symbol.toPrimitive]() { return 3; } } 1 + a // => 4四則運(yùn)算
在四則運(yùn)算中,除了"+" 其他操作都會(huì)以數(shù)字進(jìn)行計(jì)算
如果是 + 運(yùn)算,如果不是所有字面量都是number,那么會(huì)轉(zhuǎn)換為字符串(toString)進(jìn)行拼接
End持續(xù)更新中,Github信息更多哦,你的?是我最大的支持。查看詳情,
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/103159.html
摘要:基本類(lèi)型有六種,,,,,。類(lèi)型是類(lèi)數(shù)組,具有基礎(chǔ)類(lèi)型檢測(cè)檢測(cè)基礎(chǔ)類(lèi)型用只適合檢測(cè)基礎(chǔ)類(lèi)型基礎(chǔ)類(lèi)型轉(zhuǎn)換基本類(lèi)型轉(zhuǎn)換時(shí),首先會(huì)調(diào)用,然后調(diào)用。該方法在轉(zhuǎn)基本類(lèi)型時(shí)調(diào)用優(yōu)先級(jí)最高。 夯實(shí)Javascript基礎(chǔ)。 基本類(lèi)型有六種: null,undefined,boolean,number,string,symbol。 基本類(lèi)型的值是保存在棧內(nèi)存中的簡(jiǎn)單數(shù)據(jù)段 基礎(chǔ)類(lèi)型特性 基礎(chǔ)類(lèi)型最重要的...
摘要:基本類(lèi)型有六種,,,,,。類(lèi)型是類(lèi)數(shù)組,具有基礎(chǔ)類(lèi)型檢測(cè)檢測(cè)基礎(chǔ)類(lèi)型用只適合檢測(cè)基礎(chǔ)類(lèi)型基礎(chǔ)類(lèi)型轉(zhuǎn)換基本類(lèi)型轉(zhuǎn)換時(shí),首先會(huì)調(diào)用,然后調(diào)用。該方法在轉(zhuǎn)基本類(lèi)型時(shí)調(diào)用優(yōu)先級(jí)最高。 夯實(shí)Javascript基礎(chǔ)。 基本類(lèi)型有六種: null,undefined,boolean,number,string,symbol。 基本類(lèi)型的值是保存在棧內(nèi)存中的簡(jiǎn)單數(shù)據(jù)段 基礎(chǔ)類(lèi)型特性 基礎(chǔ)類(lèi)型最重要的...
摘要:中的強(qiáng)制轉(zhuǎn)換規(guī)則面試官中強(qiáng)制類(lèi)型轉(zhuǎn)換是一個(gè)非常易出現(xiàn)的點(diǎn),知道強(qiáng)制轉(zhuǎn)換時(shí)候的規(guī)則嗎注規(guī)則最好配合下面什么時(shí)候發(fā)生轉(zhuǎn)換使用這些規(guī)則看效果更佳。調(diào)用方法用來(lái)把對(duì)象轉(zhuǎn)換成原始類(lèi)型的值數(shù)值字符串和布爾值。 前言 showImg(https://segmentfault.com/img/bVbu4Fb?w=940&h=400);之前面試了幾個(gè)開(kāi)發(fā)者,他們確實(shí)做過(guò)不少項(xiàng)目,能力也是不錯(cuò)的,但是發(fā)現(xiàn)...
摘要:前端工程師自檢清單對(duì)于,掌握其語(yǔ)法和特性是最基本的,但是這些只是應(yīng)用能力,最終仍舊考量仍然是計(jì)算機(jī)體系的理論知識(shí),所以數(shù)據(jù)結(jié)構(gòu),算法,軟件工程,設(shè)計(jì)模式等基礎(chǔ)知識(shí)對(duì)前端工程師同樣重要,這些知識(shí)的理解程度,可以決定你在前端工程師這條路上能走多 2019前端工程師自檢清單 對(duì)于JavaScript,掌握其語(yǔ)法和特性是最基本的,但是這些只是應(yīng)用能力,最終仍舊考量仍然是計(jì)算機(jī)體系的理論知識(shí),所...
閱讀 5121·2021-11-15 11:39
閱讀 2847·2021-11-11 16:55
閱讀 2284·2021-10-25 09:44
閱讀 3653·2021-09-22 16:02
閱讀 2593·2019-08-30 15:55
閱讀 3215·2019-08-30 13:46
閱讀 2801·2019-08-30 13:15
閱讀 2064·2019-08-30 11:12