JavaScript的基本類型值-String類型
大致介紹
String類型用于表示由零或多個(gè)16位Unicode字符組成的字符序列,即字符串。在JavaScript中沒有單個(gè)的字符型,都是字符串。字符型就相當(dāng)于只包含一個(gè)字符的字符串。
引號(hào)
字符串可以由雙引號(hào)(“”)或單引號(hào)(‘')表示,但是要注意,如果是雙引號(hào)開始就要以雙引號(hào)結(jié)束,單雙引號(hào)是可以嵌套的
"hello"; //正確
'hello'; //正確
'hello"; //錯(cuò)誤
"hel'l'o"; //正確
轉(zhuǎn)義字符
String數(shù)據(jù)類型包含一些特殊的字符字面量,也叫轉(zhuǎn)義序列,用于表示非打印字符,或者具有其他用途的字符。
\0 空字節(jié)
\n 換行
\t 制表
\b 空格
\r 回車
\f 進(jìn)紙
\\ 斜杠
\' 單引號(hào)
\" 雙引號(hào)
\xnn 以十六進(jìn)制nn表示一個(gè)字符(n為0-f),如\x41表示'A'
\unnnn 以十六進(jìn)制nnnn表示一個(gè)Unicode字符(n為0-f),如\u03a3表示希臘字符ε
如果在非特殊轉(zhuǎn)移字符前使用反斜杠,則反斜杠會(huì)被忽略
'\a' //"a"
如果字符串需要包含反斜杠,則需要在反斜杠前面在多加一個(gè)反斜杠用來轉(zhuǎn)義
'\\a' //"\a"
特點(diǎn)
JavaScrit中的字符串是不可變的,也就是說,字符串一旦被創(chuàng)建,他們的值就不能改變。要改變某個(gè)變量保存的字符串,首先要銷毀原來的字符串,然后在用另一個(gè)包含新值得字符串填充改變量
例如:
vara lang = 'Java'; lang = lang + 'Script';
以上代碼的執(zhí)行過程:首先創(chuàng)建一個(gè)能容納10個(gè)字符的新字符串,然后在這個(gè)字符串中填充“Java”和“Script”,最后一步將原來的字符串“Java”和“Script”銷毀
字符串與數(shù)組
字符串可以被視為字符數(shù)組,因此可以使用數(shù)組的方括號(hào)運(yùn)算符,用來返回某個(gè)位置的字符(位置編號(hào)從0開始)。
var s = 'hello';
s[0] // "h"
s[1] // "e"
s[4] // "o"
// 直接對(duì)字符串使用方括號(hào)運(yùn)算符
'hello'[1] // "e"
如果方括號(hào)中的數(shù)字超過字符串的長度,或者方括號(hào)中根本不是數(shù)字,則返回undefined。
'abc'[3] // undefined
'abc'[-1] // undefined
'abc'['x'] // undefined
但是,字符串與數(shù)組的相似性僅此而已。實(shí)際上,無法改變字符串之中的單個(gè)字符。
var s = 'hello'; delete s[0]; s // "hello" s[1] = 'a'; s // "hello" s[5] = '!'; s // "hello"
length屬性
length屬性返回字符串的長度,這個(gè)屬性也是無法改變的
var s = 'hello'; s.length // 5 s.length = 3; s.length // 5
轉(zhuǎn)為字符串
要把一個(gè)值轉(zhuǎn)換為字符串有兩種方式:toString()和String()
注意:空字符串"" + 值,也可以將該值轉(zhuǎn)為字符串
toString()
幾乎每個(gè)值都有toString()方法,這個(gè)方法唯一要做的就是返回相應(yīng)值得字符串表現(xiàn)
注意:null和undefined沒有這個(gè)方法
undefined.toString();//錯(cuò)誤
null.toString();//錯(cuò)誤
true.toString();//'true'
false.toString();//'false'
'abc'.toString();//'abc'
1.23.toString();//'1.23'
({}).toString();//[object Object]
[1,2,3,4].toString();//'1,2,3,4'
(new Date()).toString();//"Sun Jun 05 2016 10:04:53 GMT+0800 (中國標(biāo)準(zhǔn)時(shí)間)"
/ab/i.toString();//'/ab/i'
還可以通過指定基數(shù),來改變輸出的值(基數(shù)默認(rèn)是十進(jìn)制)
var num = 10; console.log(num.toString()); //10 console.log(num.toString(2)); ///1010 console.log(num.toString(8)); //12
String()
String()能將任何類型的值轉(zhuǎn)換為字符串,包括null和undefined
轉(zhuǎn)換規(guī)則:
1、如果值是null,則返回'null';如果值是undefined,則返回'undefined'
2、如果值不是null或undefined,則調(diào)用toString()方法并返回原始類型值
3、若使用toString()方法返回的是對(duì)象,則再調(diào)用valueOf()方法返回原始類型值,若使用valueOf()方法返回的是對(duì)象,會(huì)報(bào)錯(cuò)
String(null) //"null"
String(undefined) //"undefined"
String(true) ///"true"
String({toString:function(){return 3}}); //3
以上所述是小編給大家介紹的JavaScript的基本類型值String類型,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
圖解Eclipse j2ee開發(fā)環(huán)境的搭建過程
這篇文章以圖文結(jié)合的方式介紹了Eclipse j2ee開發(fā)環(huán)境的搭建過程,內(nèi)容很詳細(xì),每一個(gè)步驟都有對(duì)應(yīng)的操作截圖,需要的朋友可以參考下2015-08-08
Java基礎(chǔ)知識(shí)精通數(shù)組的使用
數(shù)組對(duì)于每一門編程語言來說都是重要的數(shù)據(jù)結(jié)構(gòu)之一,當(dāng)然不同語言對(duì)數(shù)組的實(shí)現(xiàn)及處理也不盡相同。Java?語言中提供的數(shù)組是用來存儲(chǔ)固定大小的同類型元素2022-04-04

