国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JS里的數(shù)據(jù)類型轉(zhuǎn)換

CloudDeveloper / 2915人閱讀

摘要:一任意類型轉(zhuǎn)換為字符串要大寫這種方法可以將,,轉(zhuǎn)化為字符串,但是無法轉(zhuǎn)換,這兩種數(shù)據(jù)類型要大寫是一個(gè)全局函數(shù),功能更強(qiáng)大可以轉(zhuǎn)換基本上所有類型為字符串這是最簡(jiǎn)單最便捷的一種方法,把加上一個(gè)空字符串就可以快速將其他類型轉(zhuǎn)換成字符串二任意類型轉(zhuǎn)

一、任意類型轉(zhuǎn)換為字符串 1、x.toString(S要大寫)

這種方法可以將number,boolean,object轉(zhuǎn)化為字符串,但是無法轉(zhuǎn)換null,undefined這兩種數(shù)據(jù)類型

(1).toString()
"1"

true.toString()
"true"

var obj={}
(obj).toString()
"[object Object]"
2、String(x)(S要大寫)

String(x)是一個(gè)全局函數(shù),功能更強(qiáng)大可以轉(zhuǎn)換基本上所有類型為字符串

String(1)
"1"

String(null)
"null"

String(undefined)
"undefined"

String(true)
"true"

String(obj)
"[object Object]"
3、"" + x OR x + ""

這是最簡(jiǎn)單最便捷的一種方法,把x加上一個(gè)空字符串就可以快速將其他類型轉(zhuǎn)換成字符串

1 + ""
"1"

null + ""
"null"

undefined + ""
"undefined"

true + ""
"true"

obj + ""
"[object Object]"
二、任意類型轉(zhuǎn)換為布爾 1、Boolean(x)(B要大寫)

可以轉(zhuǎn)換所有類型為布爾類型

Boolean(1)
true

Boolean(null)
false

Boolean(undefined)
false

Boolean(obj)
true

Boolean("s")
true
2、!! + x

這是一種最便捷最快的方式來使其他類型轉(zhuǎn)換為布爾類型

!!1
true

!!null
false

!!undefined
false

!!obj
true

!!"s"
true

布爾類型中有五個(gè)falsy值,分別是:NaN, 0, null, undefined, ""。
falsy是在Boolean 上下文中認(rèn)定可轉(zhuǎn)換為false的值.
對(duì)象數(shù)據(jù)類型無論是空對(duì)象還是其他對(duì)象,只要是對(duì)象轉(zhuǎn)換為布爾值就是true

三、任意類型轉(zhuǎn)換為數(shù)字 1、Number(x)(N要大寫)

除了要轉(zhuǎn)換的類型本來就是由數(shù)字的組成之外,其他的轉(zhuǎn)換一律變成NaN

Number("1")
1

Number("s")
NaN

Number(obj)
NaN

Number("s1")
NaN

Number("1s")
NaN

Number("+1")
1

Number("-1")
-1
2、parseInt(x,10)MDN

這是將其他類型轉(zhuǎn)換成整數(shù)類型,后面的10表示的是十進(jìn)制,取值范圍為2~37之間

parseInt("011",10)
11

parseInt("0x11",10)
0

parseInt("011",36)
37

parseInt("0x11")
17

parseInt("08")
8

parseInt("011",2)
3
3、parseFloat(x)MDN

解析一個(gè)字符串并返回一個(gè)浮點(diǎn)數(shù)

parseFloat("3.14")
3.14

parseFloat("314e-2")
3.14

parseFloat("0.0314E+2")
3.14

parseFloat("3.14more non-digit characters")
3.14

parseFloat("FF2")
NaN
4、x - 0

這是一種最簡(jiǎn)單快捷的方法,字符串減去一個(gè)0可以轉(zhuǎn)換成數(shù)字

"1"-0
1

"s"-0
NaN

"02s"-0
NaN
5、+ x

在要轉(zhuǎn)換的類型前面加上+可以轉(zhuǎn)換成數(shù)字,并不是取絕對(duì)值

+ "1"
1

+ "-1"
-1

+ "s"
NaN

+ "1s"
NaN

+ obj
NaN
四、內(nèi)存圖

瀏覽器分配內(nèi)存給每個(gè)頁面,每個(gè)頁面也分配內(nèi)存給js引擎,js引擎將內(nèi)存分為代碼區(qū)和數(shù)據(jù)區(qū),數(shù)據(jù)區(qū)又分為stack區(qū)和heap區(qū),簡(jiǎn)單數(shù)據(jù)類型都儲(chǔ)存在stack區(qū),復(fù)雜數(shù)據(jù)類型儲(chǔ)存在heap區(qū),并在stack區(qū)儲(chǔ)存heap區(qū)對(duì)象的地址,通過stack的引用來訪問heap區(qū)的對(duì)象,復(fù)制也只是在stack區(qū)復(fù)制一個(gè)heap的地址
垃圾回收:頁面用完的內(nèi)存,瀏覽器再分給別的頁面,如果一個(gè)對(duì)象沒有被引用,它就是垃圾,將被回收
內(nèi)存泄漏:垃圾無法被清理,在IE6上就存在這樣的bug

五、淺拷貝和深拷貝 深拷貝
var a = 1
undefined
var b = a
undefined
b = 2
2
a
1

b變不影響a,這樣就是深拷貝,例如基本類型賦值就是深拷貝

淺拷貝
var a = {
    name:"a"
}
undefined
var b = a
undefined
b.name="b"
"b"
a.name
"b"

b變化會(huì)影響a,這樣的類型就是淺拷貝

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

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

相關(guān)文章

  • JS 里的數(shù)據(jù)類型轉(zhuǎn)換

    摘要:的數(shù)據(jù)類型轉(zhuǎn)換一中的數(shù)據(jù)類型中的數(shù)據(jù)類型一共有六種,即,,,,,。數(shù)據(jù)類型指的是數(shù)字,包括整型和浮點(diǎn)數(shù)。如布爾類型只有和,用于條件判斷。數(shù)據(jù)類型的相互轉(zhuǎn)換任意數(shù)據(jù)類型轉(zhuǎn)字符串特殊用法任意數(shù)據(jù)類型轉(zhuǎn)數(shù)字任意數(shù)據(jù)類型轉(zhuǎn)布爾值五個(gè)值 JS的數(shù)據(jù)類型轉(zhuǎn)換 一、js中的數(shù)據(jù)類型Js中的數(shù)據(jù)類型一共有六種,即number,string,boolean,underfine,null,object。 ...

    RaoMeng 評(píng)論0 收藏0
  • 溫故js系列(9)-相等==&嚴(yán)格相等===&代碼里的那些判斷

    摘要:業(yè)務(wù)越復(fù)雜,邏輯就越復(fù)雜,判斷就越多比較判斷比較判斷是比較兩個(gè)值,返回一個(gè)布爾值,表示是否滿足比較條件。對(duì)于非布爾值的數(shù)據(jù),取反運(yùn)算符會(huì)自動(dòng)將其轉(zhuǎn)為布爾值。 前端學(xué)習(xí):教程&開發(fā)模塊化/規(guī)范化/工程化/優(yōu)化&工具/調(diào)試&值得關(guān)注的博客/Git&面試-前端資源匯總 歡迎提issues斧正:========== JavaScript-判斷 代碼中,多多少少會(huì)有判斷語句。業(yè)務(wù)越復(fù)雜,邏輯就越...

    libin19890520 評(píng)論0 收藏0
  • JS 里的數(shù)據(jù)類型轉(zhuǎn)換

    摘要:的數(shù)據(jù)類型,共有七種數(shù)值整數(shù)和小數(shù)比如和。布爾值表示真?zhèn)蔚膬蓚€(gè)特殊值,即真和假。符號(hào)其中是新增的基本數(shù)據(jù)類型,本文僅介紹前六種。轉(zhuǎn)換規(guī)則是除了或空字符串六個(gè)值被轉(zhuǎn)為,其他值都視為。屬性對(duì)象的每一個(gè)鍵名又稱為屬性,它的鍵值可以是任何數(shù)據(jù)類型。 一、簡(jiǎn)介 JavaScript 語言的每一個(gè)值,都屬于某一種數(shù)據(jù)類型。JavaScript 的數(shù)據(jù)類型,共有七種: 數(shù)值(number):整數(shù)和...

    yck 評(píng)論0 收藏0
  • 前端設(shè)計(jì)——數(shù)據(jù)轉(zhuǎn)換

    摘要:于是,轉(zhuǎn)換層就此誕生。轉(zhuǎn)換層顧名思義,把接口數(shù)據(jù)格式轉(zhuǎn)換成頁面所需要格式。第二版設(shè)計(jì)在第一版設(shè)計(jì)中,遇到轉(zhuǎn)換方法與使用頁面對(duì)應(yīng)不明確的問題。在第三版設(shè)計(jì),也是從調(diào)整劃分子模塊方式下手,改回?cái)?shù)據(jù)類型的維度劃分,同時(shí),規(guī)范方法命名。 前言 在工作中,經(jīng)常會(huì)遇到,接口的數(shù)據(jù)格式與頁面布局/交互不匹配的情況,需要前端進(jìn)行處理。 心想:數(shù)據(jù)處理與業(yè)務(wù)無關(guān),單獨(dú)抽離一個(gè)模塊來寫吧。 于是,轉(zhuǎn)換層就...

    lei___ 評(píng)論0 收藏0
  • 前端設(shè)計(jì)——數(shù)據(jù)轉(zhuǎn)換

    摘要:于是,轉(zhuǎn)換層就此誕生。轉(zhuǎn)換層顧名思義,把接口數(shù)據(jù)格式轉(zhuǎn)換成頁面所需要格式。第二版設(shè)計(jì)在第一版設(shè)計(jì)中,遇到轉(zhuǎn)換方法與使用頁面對(duì)應(yīng)不明確的問題。在第三版設(shè)計(jì),也是從調(diào)整劃分子模塊方式下手,改回?cái)?shù)據(jù)類型的維度劃分,同時(shí),規(guī)范方法命名。 前言 在工作中,經(jīng)常會(huì)遇到,接口的數(shù)據(jù)格式與頁面布局/交互不匹配的情況,需要前端進(jìn)行處理。 心想:數(shù)據(jù)處理與業(yè)務(wù)無關(guān),單獨(dú)抽離一個(gè)模塊來寫吧。 于是,轉(zhuǎn)換層就...

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

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

0條評(píng)論

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