JS-數(shù)據(jù)類型

Javascript7種數(shù)據(jù)類型蚊俺,分別為number string boolean symbol null undefined以及object损晤。

數(shù)值(number):整數(shù)和小數(shù)(比如1和3.14)
字符串(string):文本(比如Hello World)。
布爾值(boolean):表示真?zhèn)蔚膬蓚€(gè)特殊值,即true(真)和false(假)
undefined:表示“未定義”或不存在,即由于目前沒有定義,所以此處暫時(shí)沒有任何值
null:表示空值禾锤,即此處的值為空。
對(duì)象(object):各種值組成的集合摹察。

結(jié)下來分別具體介紹一下這7種數(shù)據(jù)類型

number(數(shù)值)

Js里的數(shù)值分別有
十進(jìn)制恩掷,二進(jìn)制八進(jìn)制十六進(jìn)制

  • 數(shù)值的表示
十進(jìn)制 二進(jìn)制 八進(jìn)制 十六進(jìn)制
1 0b1 0o123 0x1BC1
1.1 0B1 0O123 0X1BC1
.1
1.23e2(科學(xué))
  • 特點(diǎn)

*十進(jìn)制:沒有前導(dǎo)0的數(shù)值供嚎。
*八進(jìn)制:有前綴0o0O的數(shù)值黄娘,或者有前導(dǎo)0峭状、且只用到0-7的八個(gè)阿拉伯?dāng)?shù)字的數(shù)值。
*十六進(jìn)制:有前綴0x0X的數(shù)值逼争。
*二進(jìn)制:有前綴0b或0B的數(shù)值优床。

默認(rèn)情況下,JavaScript 內(nèi)部會(huì)自動(dòng)將八進(jìn)制誓焦、十六進(jìn)制胆敞、二進(jìn)制轉(zhuǎn)為十進(jìn)制。

string(字符串)

  • 字符串的表示

單引號(hào):'你好'
雙引號(hào):"你好"
空字符串:''&""
空格字符串:' '&" "

  • 轉(zhuǎn)義符

為了讓瀏覽器理解我們需要輸入到頁面中的一些特殊符號(hào)是文本杂伟,而不是命令移层,所以要在是文本的特殊符號(hào)前加上"\"
比如

var a = '\n'  //會(huì)車(行)
var b = '\t'  //tab(制表符)
var c = '\\'  // "\" 符號(hào)
  • 多行字符串

多行字符串推薦用下面這種方式
使用字符串拼接可以增加代碼的易讀性

var s = '123' + '456'

在ES6里可以用反引號(hào) " ` "開頭寫多行字符串,反引號(hào)為數(shù)字鍵1左邊的鍵

var s = `123
456`

boolean(布爾)

boolean是一個(gè)數(shù)學(xué)家赫粥,發(fā)明了邏輯學(xué)
故事:下雨 上課 沒帶傘 的了肺病 死了
布爾有兩個(gè)值:true(真) false(假)

  • 與運(yùn)算 和 或運(yùn)算

與運(yùn)算
a && b的真值表

a\b
? ?
? ?

或運(yùn)算
a || b的真值表

a\b
? ?
? ?

null和undefined

一般來說观话,null表示空對(duì)象
undefined表示空非對(duì)象

  • 區(qū)別:

1.變量沒有賦值:undefined
2.有一個(gè)對(duì)象(object),現(xiàn)在不想賦值越平,給它null(推薦)
有一個(gè)非對(duì)象匪燕,不想給他賦值,給他undefined(推薦)

object(對(duì)象)

前六種類型叫基本類型(簡(jiǎn)單類型)
object叫復(fù)雜類型喧笔,由簡(jiǎn)單類型組成

  • 對(duì)象的表示

比如下面就是一個(gè)對(duì)象

{
'key' : value
'name' : 'jiujizi',
'age' : 20,
'gonder' : 'male'
}

'key':value這種格式儲(chǔ)存值,除前六種基礎(chǔ)類型外的類型都是變量龟再。

值得一提的是书闸,key最好加上單引號(hào),這樣功能是最強(qiáng)大的
(key如果不加單引號(hào)利凑,就必須依照標(biāo)示符的命名規(guī)則)
還有對(duì)象里還能有對(duì)象浆劲,具體操作方式以后再說

  • 對(duì)象的引用
porson = {  //對(duì)象賦值給變量porson
          'key' : value
          'name' : 'jiujizi',
          'age' : 20,
          'gonder' : 'male'
          }
porson['name']  //jiujizi
porson.name  //這個(gè)也可以,不過是特例

上面就是對(duì)象的引用方式哀澈,記住單引號(hào)不能少

  • 對(duì)象的注意點(diǎn)
var person = {'name':jiujizi}
delete person['name']  // 刪除person中的'name'這個(gè)key
person.name  //undefined(無value)牌借,因?yàn)閐elete操作符將key和value都刪了

delete操作符能將對(duì)象的keyvalue都刪了,與單純的賦值成undefined不同

var person = {name:'jiujizi'}
person.name = undefined
'name' in person  //  true

對(duì)象內(nèi)部的值就算被賦值為undefined割按,用in操作符來檢驗(yàn)膨报,它也依然是存在于該對(duì)象中的,并沒有消失

一些操作符

  • delete
var person = {'name':jiujizi}
delete person['name']  // 刪除person中的'name'這個(gè)key
person.name  //undefined(無value)适荣,因?yàn)閐elete操作符將key和value都刪了

用于刪除對(duì)象對(duì)應(yīng)的key值
现柠,把key刪了,value自然也就沒了

  • in
var person = {name:'jiujizi'}
person.name = undefined  //  給name這個(gè)key賦值為'undefined'
'name' in person  //  true弛矛,用in操作符來檢驗(yàn)key是否存在于對(duì)象中

用于檢測(cè)一個(gè)key是否存在于一個(gè)對(duì)象中

  • for...in...
var person = {name:'jiujizi',age:20}
for(var key in person){
console.log(key)  //  打印出person對(duì)象中的所有key
}  //  但打印的順序是不確定的

for...in...可以用來遍歷對(duì)象够吩,但輸出但值順序卻是不一定的

  • typeof
typeof 1  //  'number'
typeof 'aaa'  //  'string'
typeof symbol  //  'symbol'
typeof true  //  'boolean'
typeof null  //  'object'
typeof undefined  //  'undefined'
var a = {}
typeof a  //  'object'

typeof()可以打印出數(shù)據(jù)類型
打印出來的值都用單引號(hào)(雙引號(hào))包住,表示一個(gè)名詞

這里有兩個(gè)BUG

typeof null   //  'object'
var fn = function(){}
typeof fn  //  'function'
  1. null的數(shù)據(jù)類型應(yīng)該是null丈氓,打印出來的卻是object
  2. 數(shù)據(jù)類型function并不存在周循,但仍然可以打印出來强法,看來的確是一等公民了hhh
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市湾笛,隨后出現(xiàn)的幾起案子饮怯,更是在濱河造成了極大的恐慌,老刑警劉巖迄本,帶你破解...
    沈念sama閱讀 217,907評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件硕淑,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡嘉赎,警方通過查閱死者的電腦和手機(jī)置媳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來公条,“玉大人拇囊,你說我怎么就攤上這事“谐鳎” “怎么了寥袭?”我有些...
    開封第一講書人閱讀 164,298評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)关霸。 經(jīng)常有香客問我传黄,道長(zhǎng),這世上最難降的妖魔是什么队寇? 我笑而不...
    開封第一講書人閱讀 58,586評(píng)論 1 293
  • 正文 為了忘掉前任膘掰,我火速辦了婚禮,結(jié)果婚禮上佳遣,老公的妹妹穿的比我還像新娘识埋。我一直安慰自己,他們只是感情好零渐,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,633評(píng)論 6 392
  • 文/花漫 我一把揭開白布窒舟。 她就那樣靜靜地躺著,像睡著了一般诵盼。 火紅的嫁衣襯著肌膚如雪惠豺。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,488評(píng)論 1 302
  • 那天风宁,我揣著相機(jī)與錄音耕腾,去河邊找鬼。 笑死杀糯,一個(gè)胖子當(dāng)著我的面吹牛扫俺,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播固翰,決...
    沈念sama閱讀 40,275評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼狼纬,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼羹呵!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起疗琉,我...
    開封第一講書人閱讀 39,176評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤冈欢,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后盈简,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體凑耻,經(jīng)...
    沈念sama閱讀 45,619評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,819評(píng)論 3 336
  • 正文 我和宋清朗相戀三年柠贤,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了香浩。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,932評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡臼勉,死狀恐怖邻吭,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情宴霸,我是刑警寧澤囱晴,帶...
    沈念sama閱讀 35,655評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站瓢谢,受9級(jí)特大地震影響畸写,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜氓扛,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,265評(píng)論 3 329
  • 文/蒙蒙 一艺糜、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧幢尚,春花似錦、人聲如沸翅楼。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,871評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽毅臊。三九已至理茎,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間管嬉,已是汗流浹背皂林。 一陣腳步聲響...
    開封第一講書人閱讀 32,994評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蚯撩,地道東北人础倍。 一個(gè)月前我還...
    沈念sama閱讀 48,095評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像胎挎,于是被迫代替她去往敵國和親沟启。 傳聞我的和親對(duì)象是個(gè)殘疾皇子忆家,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,884評(píng)論 2 354