更新時間:2022-11-21 來源:黑馬程序員 瀏覽量:
字符串對象使用new String()來創(chuàng)建,在String構(gòu)造函數(shù)中傳人字符串,就會在返回的字符串對象中保存這個字符串。示例代碼如下。
var str =new String('apple'); // 創(chuàng)建字符串對象 console.log(str); // 輸出結(jié)果:String {"apple"} console.log(str.length); // 獲取字符串長度,輸出結(jié)果:5
使用“字符串變量.length”的方式也可以進行獲取,這種方式很像是在訪問一個對象的 length屬性,示例代碼如下。
實際上,字符串在JavaScript 中是一種基本包裝類型。JavaScript 中的基本包裝類型包括String、Number和Boolean,用來把基本數(shù)據(jù)類型包裝成為復雜數(shù)據(jù)類型,從而使基本數(shù)據(jù)類型也有了屬性和方法。
需要注意的是,雖然JavaScript 基本包裝類型的機制可以使普通變量也能像對象一樣訪問屬性和方法,但它們并不屬于對象類型,示例代碼如下。
var obj= new String('Hello'); console.log(typeof obj); //輸出結(jié)果:object console.log(obj instanceof String); //輸出結(jié)果:ture var str ='Hello'; console.log(typeof str); //輸出結(jié)果:sturing console.log(str instanceof String); //輸出結(jié)果: false
從上述代碼可以看出,使用new String0返回的obi是一個對象,但是普通的字符串變量并不是一個對象,它只是一個字符串類型的數(shù)據(jù)。