- 在 JavaScript 中有 5 種不同的數(shù)據(jù)類型:
string
number
boolean
object
function
三種對象類型:
Object
Date
Array
兩個不包含任何值的數(shù)據(jù)類型:
null
undefined
- 請注意:
NaN 的數(shù)據(jù)類型是 number
數(shù)組(Array)的數(shù)據(jù)類型是 object
日期(Date)的數(shù)據(jù)類型為 object
null 的數(shù)據(jù)類型是 object
未定義變量的數(shù)據(jù)類型為 undefined
如果對象是 JavaScript Array 或 JavaScript Date ,我們就無法通過 typeof 來判斷他們的類型,因為都是 返回 object。
使用constructor。toString()的方式可以獲得Array和Date類型的對象的類型信息。
js同樣存在類型轉(zhuǎn)換。多使用String()方法,或者toString()方法。
同時對于Date()類型,也有很多特定的轉(zhuǎn)換String的方法,可以參考如下:
| 方法 | 描述 |
| getDate() | 從 Date 對象返回一個月中的某一天 (1 ~ 31)。 |
| getDay() | 從 Date 對象返回一周中的某一天 (0 ~ 6)。 |
| getFullYear() | 從 Date 對象以四位數(shù)字返回年份。 |
| getHours() | 返回 Date 對象的小時 (0 ~ 23)。 |
| getMilliseconds() | 返回 Date 對象的毫秒(0 ~ 999)。 |
| getMinutes() | 返回 Date 對象的分鐘 (0 ~ 59)。 |
| getMonth() | 從 Date 對象返回月份 (0 ~ 11)。 |
| getSeconds() | 返回 Date 對象的秒數(shù) (0 ~ 59)。 |
| getTime() | 返回 1970 年 1 月 1 日至今的毫秒數(shù)。 |
字符串類型的數(shù)字同樣也可以轉(zhuǎn)換成數(shù)字類型的。
日期類型,也可以轉(zhuǎn)換成數(shù)字。Number() 或者 getTime()
search()方法與正則表達(dá)式,同replace()相似,參數(shù)可以是字符串,也可以是正則表達(dá)式。
還有幾個詳細(xì)的判斷實例,可以參考
(https://www.runoob.com/js/js-regexp.html)
另外,這部分最好結(jié)合在實際使用時的案例來做,光看方法介紹,看不出多少東西。調(diào)試 console.log()方法
變量提升hoisting。就是變量可以先使用,在最后聲明也沒關(guān)系,它會自動被提升到函數(shù)的最頂部(初始化(可理解為已經(jīng)賦值)的變量不行)。
但為了便于理解,一般還是采用順序化的定義方式。嚴(yán)格模式。"use strict";
"use strict" 指令只允許出現(xiàn)在腳本或函數(shù)的開頭。