基本包裝類型

每當讀取一個基本類型值時,後臺會創建一個對應的基本包裝類型的對象,從而可以調用一些方法來操作數據。引用類型與基本包裝類型的主要區別是對象的生存期。引用類型對象在執行流離開當前作用域之前都一直保存在內存中,而基本包裝類型對象只存在一行代碼的執行瞬間,然後就被銷燬。

typeof 基本包裝類型的實例 // 返回object

Boolean(基本包裝類型的對象) //返回true

使用new 基本包裝類型構造函數 //返回基本包裝類型的實例

直接調用與基本包裝類型同名的轉型函數 //返回的是基本類型的值

var value = "25";
var number = Number(value);
console.log(typeof number);   //number
var obj = new Number(value);
console.log(typeof obj);  //object

【Boolean】

【Number】

(三個方法都可以通過向上或向下舍入)

    ▪ 數值.toFixed(要顯示的小數位數)  //將數值按照指定的小數位數格式化爲字符串
    ▪ 數值.toExponential(小數位數)  //返回指數表示(e表示)的字符串
    ▪ 數值.toPrecision(數值所有數字的位數)  //返回最合適的格式(指數格式or一般數值格式)

【String】

String類型的每個實例都有一個length屬性。

1. 字符操作方法:

▪ 字符串.charAt(字符位置) ;or 字符串[字符位置];//返回該位置的字符
▪ 字符串.charCodeAt(字符位置) ;//返回該位置的字符的字符編碼
(與其相反的String構造函數的靜態方法:String.fromCharCode(編碼1,編碼2…..); //返回由這些字符組成字符串)
var s1 = "red";
for (var i=0;i<s1.length;i++){
    console.log(s1.charCodeAt(i)); //114、101、100
}
console.log(String.fromCharCode(114,101,100)); // red

2. 字符串操作方法:

  1. 拼接(原字符串不會變):

     字符串.concat(‘要拼接的字符串1’,‘要拼接的字符串2’…….) ; 
     //返回拼接後的新字符串(Array也有這個方法)
    
  2. 截取(原字符串不會變):

    ▪ 字符串.slice(開始位置,結束位置);(Array也有這個方法)
    ▪ 字符串.substr(開始位置,返回的字符個數);
    ▪ 字符串.substring(開始位置,結束位置);該方法會將較小數作爲開始位置。
    substr()將第一個負值與字符串長度相加,第二個負數轉換爲0;substring()把兩個負值都轉爲0
    
  3. 查找子字符串位置

    ▪ 字符串.indexOf("子字符串",開始搜索位置)  //向後搜索 (Array也有這個方法)
    ▪ 字符串.lastIndexOf(“子字符串”,開始搜索位置) //向前搜索(Array也有這個方法)
    
//找出所有e的下標
var stringValue = "Lorem ipsum dolor sit amet, consectetur adipisicing elit";
var pos = stringValue.indexOf('e');
var posArray = new Array();
while(pos>-1){
    posArray.push(pos);
    pos = stringValue.indexOf('e',pos+1);
}
console.log(posArray); //[ 3, 24, 32, 35, 52 ]

4.創建一個刪去字符串前置、後置所有空格的副本(原字符串不變):

    ▪ 字符串.trim()
    ▪ 字符串.trimLeft() //刪去字符串前置空格
    ▪ 字符串.trimRight()//刪去字符串後置空格

5.大小寫轉換(原字符串不變)

    ▪ 字符串.toLowerCase() //小寫
    ▪ 字符串.toUpperCase() //大寫
    ▪ 字符串.toLocaleLowerCase() //針對特定地區的小寫

字符串.toLocaleUpperCase()//針對特定地區的大寫

var stringValue = "Lorem ipsum dolor sit amet, consectetur adipisicing elit";
var s = stringValue.toUpperCase();
console.log(stringValue); //Lorem ipsum dolor sit amet, consectetur adipisicing elit (原字符串不變)
console.log(s); //LOREM IPSUM DOLOR SIT AMET, CONSECTETUR ADIPISICING ELIT

6.模式匹配

    ▪ 字符串.match(“正則表達式”orRegExp對象);  
      正則表達式orRegExp對象.exec(字符串);   
      //兩者返回結果一樣,是個數組
    ▪ 字符串.search(“正則表達式“orRegExp對象);  
    //返回第一個匹配的索引,若未找到,則返回-1。
    ▪ 字符串.replace(“正則表達式”orRegExp對象,替代的字符串or函數);
    [If 第一個參數爲  “正則表達式”,只會替換第一個子字符串。若要替換所以子字符串,
    第一個參數要爲RegExp對象,並指定全局標誌g]

    ▪ 字符串.split(分隔符(字符串orRegExp對象),指定數組大小(可不寫)) ;  
    //返回一個數組,包含了被指定分隔符分割的多個子字符串
var c = "red,blue,green,yellow";
var c1 = c.split(/[,]/);
console.log(c1); // [ 'red', 'blue', 'green', 'yellow' ]

7.比較兩個字符串

    ▪ 字符串1.localeCompare(字符串2);  //字符串1在字母表比字符串2前,返回-1;相等返回0;後返回1;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章