首頁 > web前端 > js教程 > javascript基礎教程之六大資料型別用法詳解

javascript基礎教程之六大資料型別用法詳解

伊谢尔伦
發布: 2017-07-18 16:20:57
原創
1569 人瀏覽過

js中有六種資料類型,包括五種基本資料類型(Number,String,Boolean,Null,Undefined),和一種混合資料類型(Object)。

js中變數是鬆散類型的,因此有時候我們需要偵測變數的資料類型。

1.Number型別

Number型別包含整數與浮點數(浮點數數值必須包含一個小數點,且小數點後面至少有一位數位)兩種值。

浮點數將會自動轉換為整數。


var num = 1.00;
console.log(num);//1,自动转换为整数
登入後複製

浮點數的最​​高精度是17位,看下面的例子,結果竟然不是0.3,至於其他程式語言,也會遇到這種情況(關於浮點數計算會產生舍入誤差問題,其他有些程式語言也會出現類似情況。特點:① 涉及的 任何關於NaN的操作,都會返回NaN   ② NaN不等於自身。


var num1 = 0.1;
var num2 = 0.2;
console.log(num1 + num2);//0.30000000000000004
登入後複製

isNaN()函數,用來判斷是否為非數字型別。如果傳入的參數是非數字類型,那麼回傳true;否則回傳false;

isNaN()函數,傳入一個參數,函數會先將參數轉換為數值。

如果參數類型為物件類型,會先呼叫物件的valueOf()方法, 再確定該方法傳回的值是否可以轉換為數值類型。如果不能,再呼叫物件的toString()方法,再確定回傳值。

數值轉換:

Number()轉型函數,可以用於任何資料型別;parseInt(),將值轉換為整數型,用的比較多;

parseFloat();將值轉換為浮點型。

2.String類型

字串類型中的單引號與雙引號的作用效果完全一樣。

字串有length屬性。可以取得字串的長度。 var str = “hello”;console.log(str.length);//5

#字串的值是不可變的。要改變一個字串的值,首先要銷毀原來的字串,再用另一個包含新值的字串去填入該字串。

var ab = "a1";
console.log(ab/10);// NaN
console.log(NaN == NaN);// false;
登入後複製

上面這段程式碼,先建立一個能容納10個字元的字串,然後在這個字串中填入java和script字串,最後銷毀原來的字串java和scrip字串,因為這兩個字串此時已經沒用了。這個個過程是在後台發生的。

字串轉換:轉型函數String(),適用於任何資料類型(null,undefined 轉換後為null和undefined);toString()方法(null,defined沒有toString()方法)。

var lang = “java”;
lang += “script”;
登入後複製

3.Boolean型別


此型別只有兩個值,true和false

轉換為boolean值: 轉型函數Boolean(),將某個值轉換為Boolean型別。詳細內容,後面會慢慢的補充。

4.Null型別

null型別被看做空物件指針,前文說到null型別也是空的物件參考。只有一個值,也就是null值,所以,當你 用typeof 運算子去偵測null類型的值時,結果是object類型。

如果你定義了一個變量,但是想在以後把這個變數當作一個物件來用,那麼最好將該物件初始化為null值。

5.Undefined類型

只有一個值,即undefined值。使用var宣告了一個變量,但未給變量初始化值,那麼這個變數的值就是undefined。

var bc = "lijinwen";
var bd = null;
var be = undefined;
console.log(bc.toString());
//console.log(bd.toString());//error 报错
//console.log(be.toString());//error 报错
console.log("------");
console.log(String(bc));
console.log(String(bd));
console.log(String(be));
登入後複製

上面這段程式碼中,age雖然聲明了,但是沒有初始化值,所以,印出來的是undefined.而變數height沒有聲明,故報錯。

但是用typeof運算子去偵測資料型別的時候,變數age沒有初始化,結果是undefined,沒有宣告變數的height偵測的型別也是undefined.

6.Object在類型

js中物件是一組屬性與方法的集合。具體的關於物件的創建方式以及物件的各種特性,會在後面的引用類型的章節中  做詳細介紹。這裡就簡單介紹一下六大資料型別中的Object.

①constructor屬性:建構子屬性,可確定目前物件的建構子。

var name = "lijinwen";
var age;
console.log(name);//lijinwen
console.log(age);//undefined
//console.log(height);//error,变量height没有声明
console.log(typeof name);//string
console.log(typeof age);//undefined
console.log(typeof height);//undefined,变量height没有声明
登入後複製

以上是javascript基礎教程之六大資料型別用法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板