文章目錄
- JavaScript 對象簡介
- JavaScript 字串(String)對象
- JavaScript Date(日期)對象
- JavaScript Array(數組)對象
- JavaScript Boolean(邏輯)對象
- JavaScript Math(算數)對象
- JavaScript RegExp 對象
- JavaScript Global 對象
JavaScript 對象簡介
JavaScript 是物件導向的程式設計語言 (OOP)。OOP 語言使我們有能力自訂對象和變數類型。(事實上,只是基於對象的,並不完全具備物件導向的語言的三大特性[封裝、繼承、多態])。
物件導向編程
在進階 JavaScript 的部分會講解如何建立自己的對象。現在,我們開始學習內建的 JavaScript 對象,以及如何使用它們。對象只是一種特殊的資料。對象擁有屬性和方法。
JavaScript 字串(String)對象
字串是 JavaScript 的一種基本的資料類型。需要注意的是,JavaScript 的字串是不可變的(immutable),String 類定義的方法都不能改變字串的內容。像 String.toUpperCase() 這樣的方法,返回的是全新的字串,而不是修改原始字串。
String 對象的 length 屬性聲明了該字串中的字元數。
String 類定義了大量操作字串的方法,一般分為這樣幾類:尋找子字串、截取,分割和拼接字串、匹配Regex、改變字串樣式等。
JavaScript Date(日期)對象
Date 對象用於處理日期和時間,Date 對象會自動把當前日期和時間儲存為其初始值。
Date 對象的大部分方法是以下幾類:
getXXX:擷取 年、月、日、時、分、秒、等等。
setXXX:設定 年、月、日、時、分、秒、等等。
toXXXString:轉成一定格式的字串。
JavaScript Array(數組)對象
數組對象的作用是:使用單獨的變數名來儲存一系列的值。
數組的常用屬性是:length,代表了這個數組中元素的個數。
數組的常用方法分這麼幾類:排序、添加和刪除元素、拼接另一個數組、轉成字串。其中添加元素和移除元素的幾個方法還有類比堆棧或隊列這些資料結構的作用。
JavaScript Boolean(邏輯)對象
Boolean(邏輯)對象用於將非邏輯值轉換為邏輯值(true 或者 false)。
在 JavaScript 中,布爾值是一種基本的資料類型。Boolean 對象是一個將布爾值打包的布爾對象。Boolean 對象主要用於提供將布爾值轉換成字串的 toString() 方法。當調用 toString() 方法將布爾值轉換成字串時(通常是由 JavaScript 隱式地調用),JavaScript 會內在地將這個布爾值轉換成一個臨時的 Boolean 對象,然後調用這個對象的 toString() 方法。
JavaScript Math(算數)對象
Math(算數)對象的作用是:執行常見的算數任務。
Math 對象並不像 Date 和 String 那樣是對象的類,因此沒有建構函式 Math(),像 Math.sin() 這樣的函數只是函數,不是某個對象的方法。您無需建立它,通過把 Math 作為對象使用就可以調用其所有屬性和方法。(相當於靜態類和靜態方法)
Math 對象的常用屬性都是數學相關的常量屬性,如圓周率π、2的平方根,算數常量e(自然對數的底數,約等於2.718)。
Math 對象中最常用的方法有這樣一些:向上(向下)取整、四捨五入取整、隨機數、返回2個數中的大數或小數。
JavaScript RegExp 對象
什麼是 RegExp?
RegExp 是Regex的縮寫。當您檢索某個文本時,可以使用一種模式來描述要檢索的內容。RegExp 就是這種模式。簡單的模式可以是一個單獨的字元。更複雜的模式包括了更多的字元,並可用於解析、格式檢查、替換等等。您可以規定字串中的檢索位置,以及要檢索的字元類型,等等。
這個知識點,相對還是比較繁雜的,想熟練掌握是需要花費一些功夫的,具體請看 JS 手冊。
JavaScript Global 對象
這是一個固有對象,目的是把所有全域方法集中在一個對象中。Global 對象不能用 new 運算子建立。它在 Scripting 引擎被初始化時建立,並立即使其方法和屬性可用。
屬性:Infinity 屬性 | NaN 屬性
方法:escape 方法 | eval 方法 | isFinite 方法 | isNaN 方法 | parseFloat 方法 | parseInt 方法 | unescape 方法
JavaScript 能幹什嗎?
Javascript 能驗證表單資料的完整性、能結合 DOM 、BOM、Ajax 、CSS 等必備的網頁前端技術,做出非常強大的動態網頁。