摘要:字符串與數(shù)組字符串可以被視為字符數(shù)字符串與數(shù)組的相似性僅此而已。實(shí)際上,無法改變字符串之中的單個(gè)字符。屬性不可改不報(bào)錯(cuò)屬性返回字符串的長度,該屬性也是無法改變的。字符集使用字符集。使用碼點(diǎn)表示字符,即將字符寫成的形式,其中代表該字符的碼點(diǎn)。
概述
定義
轉(zhuǎn)義
字符串與數(shù)組
length 屬性
字符集
Base64 轉(zhuǎn)碼
參考鏈接
1.概述
1.1定義
排在一起的字符,用單引號(hào)或者雙引號(hào) 一般用單引號(hào)
由于 HTML 語言的屬性值使用雙引號(hào),所以很多項(xiàng)目約定 JavaScript 語言的字符串只使用單引號(hào)
"Did she say "Hello"?"
// "Did she say "Hello"?"
"Did she say "Hello"?"
// "Did she say "Hello"?"
"key = "value""
"It"s a long journey"
多行報(bào)錯(cuò)可加反斜杠 輸出還是單行
var longString = "Long
long
long
string";
longString
// "Long long long string"
上面代碼表示,加了反斜杠以后,原來寫在一行的字符串,可以分成多行書寫。但是,輸出的時(shí)候還是單行,效果與寫在同一行完全一樣。注意,反斜杠的后面必須是換行符,而不能有其他字符(比如空格),否則會(huì)報(bào)錯(cuò)
輸出多行字符串,有一種利用多行注釋的變通方法。
(function () { /*
line 1
line 2
line 3
*/}).toString().split("n").slice(1, -1).join("n")
// "line 1
// line 2
// line 3"
1.2轉(zhuǎn)義
0 :null(u0000)
b :后退鍵(u0008)
f :換頁符(u000C)
n :換行符(u000A)
r :回車鍵(u000D)
t :制表符(u0009)
v :垂直制表符(u000B)
" :單引號(hào)(u0027)
" :雙引號(hào)(u0022)
:反斜杠(u005C)
"251" // "?"
"xA9" // "?"
"u00A9" // "?"
"172" === "z" // true
"x7A" === "z" // true
"u007A" === "z" // true
如果在非特殊字符前面使用反斜杠,則反斜杠會(huì)被省略。
"a"
// "a"
2字符串與數(shù)組
字符串可以被視為字符數(shù)
var s = "hello";
s[0] // "h
字符串與數(shù)組的相似性僅此而已。實(shí)際上,無法改變字符串之中的單個(gè)字符。
var s = "hello";
delete s[0];
s // "hello"
s[1] = "a";
s // "hello"
3length 屬性 不可改 不報(bào)錯(cuò)
length屬性返回字符串的長度,該屬性也是無法改變的。
var s = "hello";
s.length // 5
s.length = 3;
s.length // 5
s.length = 7;
s.length // 5
4字符集
JavaScript 使用 Unicode 字符集。JavaScript 引擎內(nèi)部,所有字符都用 Unicode 表示。
使用 Unicode 碼點(diǎn)表示字符,即將字符寫成uxxxx的形式,其中xxxx代表該字符的 Unicode 碼點(diǎn)。比如,u00A9代表版權(quán)符號(hào)
var fu006Fu006F = "abc";
foo // "abc"
上面代碼中,第一行的變量名foo是 Unicode 形式表示,第二行是字面形式表示。JavaScript 會(huì)自動(dòng)識(shí)別
1個(gè)字符16位2個(gè)字節(jié)也是單位長度
但是,UTF-16 有兩種長度:對于碼點(diǎn)在U+0000到U+FFFF之間的字符,長度為16位(即2個(gè)字節(jié));對于碼點(diǎn)在U+10000到U+10FFFF之間的字符,長度為32位(即4個(gè)字節(jié)),而且前兩個(gè)字節(jié)在0xD800到0xDBFF之間,后兩個(gè)字節(jié)在0xDC00到0xDFFF之間。舉例來說,碼點(diǎn)U+1D306對應(yīng)的字符為
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/106016.html
摘要:基本類型引用類型等,說白了就是對象。。?;景b類型如下基本類型毫無疑問上面的是一個(gè)基本類型,但是它卻能召喚出一個(gè)的方法,這是什么原因呢主要是因?yàn)樵诨绢愋椭?,有三個(gè)比較特殊的存在就是,這三個(gè)基本類型都有自己對應(yīng)的包裝對象。 基本類型:Undefined,Null,Boolean,Number,String 引用類型:Object,Array,Date,RegExp等,說白了就是對象。...
摘要:類型轉(zhuǎn)換法則這里討論里對不同類型進(jìn)行運(yùn)算的時(shí)候,是如何做類型轉(zhuǎn)換的一般是隱式轉(zhuǎn)換。轉(zhuǎn)化過程先查看對象的方法是否返回基本類型。結(jié)果轉(zhuǎn)為返回字符串。引用類型需先轉(zhuǎn)換為基本類型。后記不同類型之間的類型轉(zhuǎn)換,確實(shí)是讓人撓頭的語言。 Javascript為什么會(huì)有類型轉(zhuǎn)換 Javascirpt世界里,不推薦大量的使用try...catch...,我想大概原因: JS里任何類型之間的算數(shù)運(yùn)算,邏...
摘要:今天來討論一下中的基本包裝對象也叫基本包裝類型,之前剛學(xué)到這里的時(shí)候,自己也是一頭霧水,不明白這個(gè)基本包裝對象到底是個(gè)什么鬼,后來找了很多資料,終于看清了它的真面目?;绢愋鸵妙愋偷龋f白了就是對象。。。 今天來討論一下JS中的基本包裝對象(也叫基本包裝類型),之前剛學(xué)到這里的時(shí)候,自己也是一頭霧水,不明白這個(gè)基本包裝對象到底是個(gè)什么鬼,后來找了很多資料,終于看清了它的真面目。首先呢...
摘要:首先,為了掌握好類型轉(zhuǎn)換,我們要理解一個(gè)重要的抽象操作為什么說這是個(gè)抽象操作呢因?yàn)檫@是內(nèi)部才會(huì)使用的操作,我們不會(huì)顯示調(diào)用到?;疽?guī)則中的類型轉(zhuǎn)換總是返回基本類型值,如字符串?dāng)?shù)字和布爾值,不會(huì)返回對象和函數(shù)。 Javascript 里的類型轉(zhuǎn)換是一個(gè)你永遠(yuǎn)繞不開的話題,不管你是在面試中還是工作寫代碼,總會(huì)碰到這類問題和各種的坑,所以不學(xué)好這個(gè)那是不行滴。關(guān)于類型轉(zhuǎn)換我也看過不少的書和各...
摘要:今天把接下來引用類型中的一些內(nèi)容全部記錄完畢基本包裝類型為了便于操作基本類型值,還提供了種特殊的引用類型。這三種類型具有與各自的基本類型響應(yīng)的特殊行為。重寫后的返回對象表示的數(shù)值類型,另外兩個(gè)方法則返回字符串形式的數(shù)值。 今天把接下來引用類型中的一些內(nèi)容全部記錄完畢~ 基本包裝類型 為了便于操作基本類型值,JavaScript還提供了3種特殊的引用類型:Boolean, Number,...
摘要:來自你不知道的對未初始化和未聲明的變量執(zhí)行操作符都返回了值類型是第二個(gè)只有一個(gè)值的數(shù)據(jù)類型,這個(gè)特殊的值是。 基本類型 主要有:undefined、null、布爾值(Boolean)、字符串(String)、數(shù)值(Number)、Symbol undefined 在使用 var,let,const 聲明變量但未對其加以初始化時(shí),這個(gè)變量的值就是undefined 注意點(diǎn): ...
閱讀 1794·2021-10-09 09:44
閱讀 3495·2021-09-27 13:36
閱讀 1652·2021-09-22 15:33
閱讀 1400·2021-09-22 15:23
閱讀 1281·2021-09-06 15:02
閱讀 1785·2019-08-29 16:14
閱讀 3007·2019-08-29 15:26
閱讀 2487·2019-08-28 18:08