1.資料型別
- js中一共分成六種資料型別
- string 字串
- number 數值
- boolean 布林值
- null 空值
- undefined 未定義
- object 物件
- 其中基本資料型別有
- string 字串
- js中的字串需要使用引號引起來雙引號或單引號都行
- 在字串中使用\作為轉義字元
\』 ==> 』
\」 ==> 」
\n ==> 換行
\t ==> 製表符
\ ==> \
- 使用typeof運算子檢查字串時,會返回"string"
- number 數值
- js中所有的整數和浮點數都是number型別
- 特殊的數字
infinity 正無窮
-infinity 負無窮
nan 非法數字(not a number)
- 其他進製的數字的表示:
0b 開頭表示二進位制,但是不是所有的瀏覽器都支援
0 開頭表示八進位制
0x 開頭表示十六進製制
- 使用typeof檢查乙個number型別的資料時,會返回"number"
(包括nan 和 infinity)
- boolean 布林值
- 布林值主要用來進行邏輯判斷,布林值只有兩個
- true 邏輯的真
- false 邏輯的假
- 使用typeof檢查乙個布林值時,會返回"boolean"
- null 空值
- 空值專門用來表示為空的物件,null型別的值只有乙個
- null
- 使用typeof檢查乙個null型別的值時會返回"object"
- undefined 未定義
- 如果宣告乙個變數但是沒有為變數賦值此時變數的值就是undefined
- 該型別的值只有乙個 undefined
- 使用typeof檢查乙個undefined型別的值時,會返回"undefined"
- 引用資料型別
- object 物件
- 型別轉換
- 型別轉換就是指將其他的資料型別,轉換為string number 或 boolean
- 轉換為string
- 方式一(強制型別轉換):
- 呼叫被轉換資料的tostring()方法
- 例子:
var a = 123;
a = a.tostring();
- 注意:這個方法不適用於null和undefined
由於這兩個型別的資料中沒有方法,所以呼叫tostring()時會報錯
- 方式二(強制型別轉換):
- 呼叫string()函式
- 例子:
var a = 123;
a = string(a);
- 原理:對於number boolean string都會呼叫他們的tostring()方法來將其轉換為字串,
對於null值,直接轉換為字串"null"。對於undefined直接轉換為字串"undefined"
- 方式三(隱式的型別轉換): *****
- 為任意的資料型別 +""
- 例子:
var a = true;
a = a + "";
- 原理:和string()函式一樣
- 轉換為number
- 方式一(強制型別轉換):
- 呼叫number()函式
- 例子:
var s = "123";
s = number(s);
- 轉換的情況:
1.字串 --> 數字
- 如果字串是乙個合法的數字,則直接轉換為對應的數字
- 如果字串是乙個非法的數字,則轉換為nan
- 如果是乙個空串或純空格的字串,則轉換為0
2.布林值 --> 數字
- true轉換為1
- false轉換為0
3.空值 --> 數字
- null轉換為0
4.未定義 --> 數字
- undefined 轉換為nan
- 方式二(強制型別轉換):
- 呼叫parseint()或parsefloat()
- 這兩個函式專門用來將乙個字串轉換為數字的
- parseint()
- 可以將乙個字串中的有效的整數字提取出來,並轉換為number
- 例子:
var a = "123.456px";
a = parseint(a); //123
- 如果需要可以在parseint()中指定乙個第二個引數,來指定進製
- parsefloat()
- 可以將乙個字串中的有效的小數字提取出來,並轉換為number
- 例子:
var a = "123.456px";
a = parsefloat(a);
- 方式三(隱式的型別轉換):
- 使用一元的+來進行隱式的型別轉換
- 例子:
var a = "123";
a = +a;
- 原理:和number()函式一樣
- 轉換為布林值
- 方式一(強制型別轉換):
- 使用boolean()函式
- 例子:
var s = "false";
s = boolean(s); //true
- 轉換的情況
字串 --> 布林
- 除了空串其餘全是true
數值 --> 布林
- 除了0和nan其餘的全是true
null、undefined ---> 布林
- 都是false
物件 ---> 布林
- 都是true
- 方式二(隱式型別轉換):
- 為任意的資料型別做兩次非運算,即可將其轉換為布林值
- 例子:
var a = "hello";
a = !!a; //true
- 運算子
- 運算子也稱為操作符
- 通過運算子可以對乙個或多個值進行運算或操作
- typeof運算子
- 用來檢查乙個變數的資料型別
- 語法:typeof 變數
- 它會返回乙個用於描述型別的字串作為結果
- 算數運算子
+ 對兩個值進行加法運算並返回結果
- 對兩個值進行減法運算並返回結果
* 對兩個值進行乘法運算並返回結果
/ 對兩個值進行除法運算並返回結果
% 對兩個值進行取餘運算並返回結果
- 除了加法以外,對非number型別的值進行運算時,都會先轉換為number然後在做運算。
- 而做加法運算時,如果是兩個字串進行相加,則會做拼串操作,將兩個字元連線為乙個字串。
- 任何值和字串做加法,都會先轉換為字串,然後再拼串
- 一元運算子
- 一元運算子只需要乙個運算元
- 一元的+
- 就是正號,不會對值產生任何影響,但是可以將乙個非數字轉換為數字
- 例子:
var a = true;
a = +a;
- 一元的-
- 就是負號,可以對乙個數字進行符號位取反
- 例子:
var a = 10;
a = -a;
- 自增
- 自增可以使變數在原值的基礎上自增1
- 自增使用 ++
- 自增可以使用 前++(++a)後++(a++)
- 無論是++a 還是 a++都會立即使原變數自增1
不同的是++a和a++的值是不同的,
++a的值是變數的新值(自增後的值)
a++的值是變數的原值(自增前的值)
- 自減
- 自減可以使變數在原值的基礎上自減1
- 自減使用 --
- 自減可以使用 前--(--a)後--(a--)
- 無論是--a 還是 a--都會立即使原變數自減1
不同的是--a和a--的值是不同的,
--a的值是變數的新值(自減後的值)
a--的值是變數的原值(自減前的值)
資料型別和型別轉換
整數型 byte,short,int,long,char 浮點型 float,double 浮點型別的資料預設是double型別。轉義字元 n換行 b退格 r回車 t製表 雙引號 單引號 char型別的資料使用 單引號 string型別的資料使用 雙引號 double 雙精度 64位 佔8位元組,f...
go 資料型別和型別轉換
數字型別包括整型和浮點型,內建的和系統無關的數字型別包括 和系統有關的型別有 組成每個字串的元素叫做 字元 可以通過遍歷或者單個獲取字串元素獲得字元 var a 中 var b x go 語言的字元有以下兩種 uint8型別,或者叫 byte 型,代表了ascii碼的乙個字元。rune型別,代表乙個...
資料型別補充和轉換
str 字串 定義 s s str capitalize 首字母大寫 title 每個單詞的首字母大寫 count 統計 swapcase 大小寫轉換 find 從左到右查詢元素,返回元素的索引值,找不到返回 1 推薦使用 index 查詢元素索引 找不到會報錯list 列表 定義 li li li...