1. 程式人生 > >JavaScript中的內置對象(數組、Boolean、Number、字符串)和自定義對象

JavaScript中的內置對象(數組、Boolean、Number、字符串)和自定義對象

indexof() join size 回調 cal string 長度 排列 concat

JS中常用的內置對象有:數組、Boolean類、Number類、字符串。下面分別介紹各自的常用方法

JS中的數組

1.數組的聲明  
  ①字面量聲明 直接使用[]聲明數組:
  var arr=[1,2,"3",true,null,undefined];

  在JS中同一數組可以存放各種數據類型。

  ②使用new關鍵字聲明:var arr = new Array();
  參數可以有三種形式:
  >>> 不傳參數,表示創建一個長度為0的空數組;
  >>> 傳入一個數值,表示創建長度為length的數組。但是JS中數組的長度可以隨時動態改變;
  >>> 傳入多個值,表示創建一個數組,並將這些值作為數組元素。



2.數組中元素的讀寫、增刪:
  ①使用[]讀取數組元素。
  ②數組中元素的增刪操作:

  >>> 刪除數組中的元素:delet arr[1];
  >>> .push():在數組的最後追加一個元素
  >>> .pop():表示刪除數組的最後一個元素
  >>> .shift():刪除數組的第一個元素
  >>> .unshift():在數組的開頭,插入一個新元素

3.JS中數組的各種方法:
  ①.join("-"):傳入分隔符,表示用指定分隔符將數組連接成字符串。
  如果參數設為空,默認用逗號分隔。

  ②.concat():連接兩個或更多數組,返回連接後的新數組,如果連接的數組是二維數組,則只能拆開一層;

  [1,2].concat([3,4])-->[1,2,3,4]
  [1,2].concat([3,4,[5,6]])-->[1,2,3,4,[5,6]]

  ③.sort():對數組進行排序。
  >>> 默認情況,將按照ASCII碼進行升序排列;
  >>> 參數可以直接傳入比較函數:
  arr.sort(function(){
  return a-b;//升序
  return b-a;//降序
  });


  ④.reverse():將原數組的元素順序翻轉。

  ⑤.slice(start,end):接收兩個值,截取一個子數組,並返回。
  >>> 傳入一個值,表示從當前下標開始截到最後;
  >>> 傳入兩個值,表示從start截到end,含start不包含end
  >>> start和end可正可負。正數表示從左向右,從0開始;
  負數表示從右向左,從-1開始。

  ⑥.indexOf():查找數組元素第一次出現的下標
  .lastindexOf():查找數組元素最後一次出現的下標

  ⑦.forEach();接收一個回調函數,遍歷數組
  [這個函數在IE8之前不能用]
  .forEach(function(item,index){
  console.log(item+"-------"+index);
  });

  ⑧.map():數組映射,在回調函數中,可以有返回值。表示將返回的每一個值,賦給新數組。
  [這個函數在IE8之前不能用]
  var arr1=arr.map(function(item,index,arr){
  return item;
  });

Boolean類

Boolean類有兩種聲明方式:字面量聲明和new關鍵字聲明。

1.使用new關鍵字聲明的變量,用typeof檢測是object類型;

2.使用字面量聲明的變量,用typeof檢測是boolean類型

如果不用new關鍵字而直接作為Boolean()函數使用,則可以將各種數據類型轉換為boolean類型的變量

Number類

Number類的常用方法有:

1、.toFixed(2):將數值轉為字符串,同時四舍五入,保留指定位數的小數。

2、.toString():將數值轉為字符串

3、toLocaleString():將數值按本地格式轉為字符串,千位分隔符,每三個數為一組。

(12,345,678.5678)

4、.valueOf():將對象類型,取到基本數字值。

字符串

1、.length屬性返回字符串的長度
2、字符串中讀取每個字符:
str[0] 或者 str.charAt(0)
3、其他常用方法:

  ①.toLowerCase():把字符串轉化為小寫
  ②.toUpperCase():把字符串轉化為大寫
  ③.substring(index1,index2):返回index1和index2之間的字符串,包括index1對應的字符,不包括index2對應的字符
  ④.indexOf():查找某個字符值在字符串中首次出現的位置
  ⑤.lastIndexOf():在字符串中查找指定的字符或子串最後一次出現的位置
  ⑥.split("") :傳入指定字符,將字符串分割為多個子串,返回一個字符串類型的數組
  ⑦.replace(/h/g,"*"):如果第一個參數是字符串,則只能替換掉第一個字符串;如果想要替換多個,可以使用正則表達式。

JS中自定義對象的聲明

1.使用字面量聲明:
  var obj={
    age:14,
    name:"zhangsan",
    func:function(){
    }
  }

註意:
  ①屬性和屬性值之間用:分隔表示鍵值對
  ②多對屬性之間,用逗號分隔
  ③對象的鍵,可以是各種數據類型(除了數組[]和對象{})。
  對象的值,可以是各種數據類型

2.使用new 關鍵字聲明
  var obj1=new Object;
  obj1.name="zhangsan";
  obj1.func=function(){
  }

3.對象屬性和方法的讀寫
  ①使用、調用
  在對象外部,可以使用obj.age
  在對象內部,可以使用obj.age或者this.age

  註意:在對象中,直接使用變量名默認是使用全局的變量。如果要使用對象的屬性,那麽必須用對象名或者this調用
  ②使用[key]調用:obj[age] obj[1] obj["name"]
  如果對象的鍵包含特殊的字符,無法使用.調用時,可以使用中括號調用。

4.obj.hasOwnProperty(keys) 檢測一個鍵是否屬於一個對象

5.delete obj.name 刪除對象的屬性

JavaScript中的內置對象(數組、Boolean、Number、字符串)和自定義對象