js的內建物件
4.6 JS的內建物件
JS跟JAVA一樣,也是一種面向物件的程式語言,JS將物件總共劃分為以下三種類型 :JS內建物件、瀏覽器內建物件、自定義物件
JS內建物件:JS語言自己已經定義好的一些物件,比如String、Date、Array......
瀏覽器內建物件:JS針對瀏覽器當前的系統配置,以及正在裝載的頁面提供的一些可供使用的物件: windows、history、location......
自定義物件:使用者根據自己的需求而定義的物件
4.6.1 字串物件
字串型別是JS中基本資料型別中間的一個,JS跟JAVA一樣,字元串同樣也是一個獨立的物件
4.6.1.1 字串物件的建立
1)直接宣告字串變數
var str = "hello world";
通過直接宣告:我們可以將聲明後的變數看做是一個字串物件, var這個關鍵字可以省略
2)使用new關鍵字建立字串
var str = new String("hello world");
通過new關鍵字建立字串物件,var關鍵字同樣可以省略,構造器的String中的S必須大寫,物件資料都存放在使用者電腦記憶體的棧區域中。
4.6.1.2 字串常見屬性
屬性 |
描述 |
constructor |
對建立該物件的函式的引用 |
字串的長度 |
|
prototype |
允許您向物件新增屬性和方法 |
測試字串長度時,一個空格佔一個字元位,一個漢字佔一個字元位
4.6.1.3 字串常見方法
方法 |
描述 |
建立 HTML 錨。 |
|
用大號字型顯示字串。 |
|
顯示閃動字串。 |
|
使用粗體顯示字串。 |
|
返回在指定位置的字元。 |
|
返回在指定的位置的字元的 Unicode 編碼。 |
|
連線字串。 |
|
以打字機文字顯示字串。 |
|
使用指定的顏色來顯示字串。 |
|
使用指定的尺寸來顯示字串。 |
|
從字元編碼建立一個字串。 |
|
檢索字串。 |
|
使用斜體顯示字串。 |
|
從後向前搜尋字串。 |
|
將字串顯示為連結。 |
|
用本地特定的順序來比較兩個字串。 |
|
找到一個或多個正則表示式的匹配。 |
|
替換與正則表示式匹配的子串。 |
|
檢索與正則表示式相匹配的值。 |
|
提取字串的片斷,並在新的字串中返回被提取的部分。 |
|
使用小字號來顯示字串。 |
|
把字串分割為字串陣列。 |
|
使用刪除線來顯示字串。 |
|
把字串顯示為下標。 |
|
從起始索引號提取字串中指定數目的字元。 |
|
提取字串中兩個指定的索引號之間的字元。 |
|
把字串顯示為上標。 |
|
把字串轉換為小寫。 |
|
把字串轉換為大寫。 |
|
把字串轉換為小寫。 |
|
把字串轉換為大寫。 |
|
toSource() |
代表物件的原始碼。 |
返回字串。 |
|
返回某個字串物件的原始值。 |
4.6.2 數學物件Math
無論是JAVA還是JS ,數值計算這種場景一定是非常多的,為了方便計算,所以JS中,也提供了Math計算物件,相當於java的工具類,直接使用無需建立。
4.6.2.1 數學常量
Math計算物件,同樣不需要大家去建立,直接使用就可以了。數學中有很多的常量,比如:PI.、E......
屬性 |
描述 |
返回算術常量 e,即自然對數的底數(約等於2.718)。 |
|
返回 2 的自然對數(約等於0.693)。 |
|
返回 10 的自然對數(約等於2.302)。 |
|
返回以 2 為底的 e 的對數(約等於 1.414)。 |
|
返回以 10 為底的 e 的對數(約等於0.434)。 |
|
返回圓周率(約等於3.14159)。 |
|
返回返回 2 的平方根的倒數(約等於 0.707)。 |
|
返回 2 的平方根(約等於 1.414)。 |
4.6.2.2 數學方法
方法 |
描述 |
返回數的絕對值。 |
|
返回數的反餘弦值。 |
|
返回數的反正弦值。 |
|
以介於 -PI/2 與 PI/2 弧度之間的數值來返回 x 的反正切值。 |
|
返回從 x 軸到點 (x,y) 的角度(介於 -PI/2 與 PI/2 弧度之間)。 |
|
對數進行上舍入。 |
|
返回數的餘弦。 |
|
返回 e 的指數。 |
|
對數進行下舍入。 |
|
返回數的自然對數(底為e)。 |
|
返回 x 和 y 中的最高值。 |
|
返回 x 和 y 中的最低值。 |
|
返回 x 的 y 次冪。 |
|
返回 0 ~ 1 之間的隨機數。 |
|
把數四捨五入為最接近的整數。 |
|
返回數的正弦。 |
|
返回數的平方根。 |
|
返回角的正切。 |
|
返回該物件的原始碼。 |
|
返回 Math 物件的原始值。 |
4.6.3 數學物件Number
Number物件為數值物件,它的建立方式也很簡單
4.6.3.1 建立物件
(3種方式都行)
var num = new Number(3.14);
var num = new Number("3.14");
var num = Number(3.14);
4.6.3.2 物件屬性
屬性 |
描述 |
返回對建立此物件的 Number 函式的引用。 |
|
可表示的最大的數。 |
|
可表示的最小的數。 |
|
非數字值。 |
|
負無窮大,溢位時返回該值。 |
|
正無窮大,溢位時返回該值。 |
|
prototype |
使您有能力向物件新增屬性和方法 |
4.6.3.3 物件方法
方法 |
描述 |
把數字轉換為字串,使用指定的基數。 |
|
把數字轉換為字串,使用本地數字格式順序。 |
|
把數字轉換為字串,結果的小數點後有指定位數的數字。 |
|
把物件的值轉換為指數計數法。 |
|
把數字格式化為指定的長度。 |
|
返回一個 Number 物件的基本數字值。 |
toFixed的例子:
var num = new Number(3.14159).toFixed(4);
得到num為3.1416,保留4位小數,多餘的省略,遵循四捨五入。
4.6.4 Date物件
4.6.4.1 建立物件
var date = new Date();//得到使用者系統時間
var date = new Date("June 10,2016");//得到曾經某一額時間的時間物件
var date = new Date(2000000000000);//建立一個距離1970-1-1 00:00:00有2000000000000毫秒的時間物件
var date = new Date("2015/10/23");//2015-10-23
var date = new Date(2015,6,10,17,56,23);//建立一個2015年7月10日17時56分23秒的時間物件,記住月份是從0開始
4.6.4.2 物件屬性
屬性 |
描述 |
返回對建立此物件的 Date 函式的引用。 |
|
使您有能力向物件新增屬性和方法。 |
4.6.4.3 物件方法
方法 |
描述 |
返回當日的日期和時間。 |
|
從 Date 物件返回一個月中的某一天 (1 ~ 31)。 |
|
從 Date 物件返回一週中的某一天 (0 ~ 6)。 |
|
從 Date 物件返回月份 (0 ~ 11)。 |
|
從 Date 物件以四位數字返回年份。 |
|
請使用 getFullYear() 方法代替。 |
|
返回 Date 物件的小時 (0 ~ 23)。 |
|
返回 Date 物件的分鐘 (0 ~ 59)。 |
|
返回 Date 物件的秒數 (0 ~ 59)。 |
|
返回 Date 物件的毫秒(0 ~ 999)。 |
|
返回 1970 年 1 月 1 日至今的毫秒數。 |
|
返回本地時間與格林威治標準時間 (GMT) 的分鐘差。 |
|
根據世界時從 Date 物件返回月中的一天 (1 ~ 31)。 |
|
根據世界時從 Date 物件返回週中的一天 (0 ~ 6)。 |
|
根據世界時從 Date 物件返回月份 (0 ~ 11)。 |
|
根據世界時從 Date 物件返回四位數的年份。 |
|
根據世界時返回 Date 物件的小時 (0 ~ 23)。 |
|
根據世界時返回 Date 物件的分鐘 (0 ~ 59)。 |
|
根據世界時返回 Date 物件的秒鐘 (0 ~ 59)。 |
|
根據世界時返回 Date 物件的毫秒(0 ~ 999)。 |
|
返回1970年1月1日午夜到指定日期(字串)的毫秒數。 |
|
設定 Date 物件中月的某一天 (1 ~ 31)。 |
|
設定 Date 物件中月份 (0 ~ 11)。 |
|
設定 Date 物件中的年份(四位數字)。 |
|
請使用 setFullYear() 方法代替。 |
|
設定 Date 物件中的小時 (0 ~ 23)。 |
|
設定 Date 物件中的分鐘 (0 ~ 59)。 |
|
設定 Date 物件中的秒鐘 (0 ~ 59)。 |
|
設定 Date 物件中的毫秒 (0 ~ 999)。 |
|
以毫秒設定 Date 物件。 |
|
根據世界時設定 Date 物件中月份的一天 (1 ~ 31)。 |
|
根據世界時設定 Date 物件中的月份 (0 ~ 11)。 |
|
根據世界時設定 Date 物件中的年份(四位數字)。 |
|
根據世界時設定 Date 物件中的小時 (0 ~ 23)。 |
|
根據世界時設定 Date 物件中的分鐘 (0 ~ 59)。 |
|
根據世界時設定 Date 物件中的秒鐘 (0 ~ 59)。 |
|
根據世界時設定 Date 物件中的毫秒 (0 ~ 999)。 |
|
返回該物件的原始碼。 |
|
把 Date 物件轉換為字串。 |
|
把 Date 物件的時間部分轉換為字串。 |
|
把 Date 物件的日期部分轉換為字串。 |
|
請使用 toUTCString() 方法代替。 |
|
根據世界時,把 Date 物件轉換為字串。 |
|
根據本地時間格式,把 Date 物件轉換為字串。 |
|
根據本地時間格式,把 Date 物件的時間部分轉換為字串。 |
|
根據本地時間格式,把 Date 物件的日期部分轉換為字串。 |
|
根據世界時返回 1970 年 1 月 1 日 到指定日期的毫秒數。 |
|
返回 Date 物件的原始值。 |
如果要做日期格式化:
//動態給Date物件新增新的方法
Date.prototype.format = function () {
var y = this.getFullYear();
var m = this.getMonth() + 1;
var d = this.getDate();
var hh = this.getHours();
var mm = this.getMinutes();
var ss = this.getSeconds();
return y + "-" + formatNumber(m) + "-" + formatNumber(d) + " " + formatNumber(hh) + ":" + formatNumber(mm) + ":" + formatNumber(ss);
}
//位數不夠,就使用0補位
function formatNumber(value) {
if (value < 10) {
value = '0' + value;
}
return value;
}
var date = new Date(2015, 5, 10, 17, 56, 23);
alert(date.format());
4.6.5陣列物件Array
JS中的陣列物件,根據JAVA中的Arraylist集合一樣,都是一個有序資料集合。陣列中允許存放不同型別的陣列。然後使用陣列名和下標的結合,就可以取得陣列中的元素。
4.6.5.1 陣列的建立
三種建立方式
var array = new Array();//建立一個沒有指定大小的陣列物件
var array = new Array(5);//建立一個有五個大小空間的陣列
var array = new Array("hello","world","ni","hao");//建立一個包含這些內容的陣列物件
4.6.5.2 陣列的屬性
屬性 |
描述 |
返回對建立此物件的陣列函式的引用。 |
|
設定或返回陣列中元素的數目。 |
|
使您有能力向物件新增屬性和方法。 |