搜尋
首頁web前端js教程JavaScript中有哪三種對象

JavaScript中有哪三種對象

Jun 15, 2021 pm 04:40 PM
javascript物件

JavaScript中的三種對象:1、內部(置)對象,如Array,Boolean,Data,Math,Number,Object,RegExp,String對像等;2、宿主對象,即執行JS腳本的環境提供的對象;3、自訂對象。

JavaScript中有哪三種對象

本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦

JS三種物件

JS中,可以將物件分為「內部物件」、「宿主物件」、「自訂物件」三種。

如圖所示:

 

內部物件

##⑴Number物件

⑵Math:內建物件

Math 物件屬性

屬性描述#E 傳回算術常數e,也就是自然對數的底數(約等於2.718)。 LN2傳回 2 的自然對數(約等於0.693)。 LN10傳回 10 的自然對數(約等於2.302)。 LOG2E傳回以 2 為底的 e 的對數(約等於 1.4426950408889634)。 LOG10E傳回以 10 為底的 e 的對數(約等於0.434)。 PI傳回圓周率(約等於3.14159)。 SQRT1_2傳回 2 的平方根的倒數(約等於 0.707)。 SQRT2傳回 2 的平方根(約等於 1.414)。

Math 物件方法

方法描述abs(x)傳回x 的絕對值。 acos(x)傳回 x 的反餘弦值。 asin(x)傳回 x 的反正弦值。 atan(x)以介於 -PI/2 與 PI/2 弧度之間的數值來傳回 x 的反正切值。 atan2(y,x)傳回從x 軸到點(x,y) 的角度(介於-PI/2 與PI/2 弧度之間)。 ceil(x)對數進行上捨入。 cos(x)傳回數的餘弦。 exp(x)傳回 Ex 的指數。 floor(x)對 x 進行下捨入。 log(x)傳回數的自然對數(底為e)。 max(x,y,z,...,n)傳回 x,y,z,...,n 中的最高值。 min(x,y,z,...,n)傳回 x,y,z,...,n中的最低值。 pow(x,y) 傳回 x 的 y 次方。 random()傳回 0 ~ 1 之​​間的隨機數。 round(x)四捨五入。 sin(x)傳回數的正弦。 sqrt(x) 傳回數的平方根。 tan(x)傳回角的正切。

⑶Boolean 物件

Boolean 物件屬性

屬性描述constructor傳回對建立此物件的Boolean 函數的參考prototype使您有能力為物件新增屬性和方法。
 

Boolean 物件方法

方法說明toString()把布林值轉換為字串,並傳回結果。 valueOf() 傳回 Boolean 物件的原始值。

 ⑷String物件

String 物件屬性

屬性描述constructor對建立該物件的函數的參考length字串的長度prototype允許您向物件新增屬性和方法

 String 物件方法

##charAt() 傳回指定位置的字元。 charCodeAt()傳回指定的位置的字元的 Unicode 編碼。 concat()連接兩個或更多字串,並傳回新的字串。 fromCharCode()將 Unicode 編碼轉換為字元。 indexOf()傳回某個指定的字串值在字串中首次出現的位置。 includes()尋找字串中是否包含指定的子字串。 lastIndexOf()從後向前搜尋字串,並從起始位置(0)開始計算回傳字串最後出現的位置。 match()尋找找到一個或多個正規表示式的符合。 repeat()複製字串指定次數,並將它們連接在一起傳回。 replace()在字串中尋找符合的子字串, 並取代與正規表示式相符的子字串。 search()尋找與正規表示式相符的值。 slice()提取字串的片段,並在新的字串中傳回被提取的部分。 split()把字串分割成字串陣列。 startsWith()查看字串是否以指定的子字串開頭。 substr()從起始索引號擷取字串中指定數目的字元。 substring()會擷取字串中兩個指定的索引號之間的字元。 toLowerCase()把字串轉換成小寫。 toUpperCase()把字串轉換為大寫。 trim()移除字串兩邊的空白toLocaleLowerCase()根據本地主機的語言環境把字串轉換為小寫。 toLocaleUpperCase()根據本機的語言環境將字串轉換為大寫。 valueOf()傳回某個字串物件的原始值。 toString()傳回一個字串。
方法 描述

 ⑸RegExp物件

RegExp 物件方法

方法compileexec
描述
在1.5 版本中已廢棄。 編譯正規表示式。
檢索字串中指定的值。傳回找到的值,並確定其位置。

test檢索字串中指定的值。傳回 true 或 false。 描述擷取與正規表示式相符的值。 找到一個或多個正規表示式的符合。 取代與正規表示式相符的子字串。
toString 傳回正規表示式的字串。
 支援正規表示式的String 物件的方法 方法
FF IE search
1 4 match
1 4 replace
1

4

split4#RegExp 物件屬性##屬性描述constructor#傳回一個函數,該函數是一個建立RegExp 物件的原型。 global判斷是否設定了"g" 修飾符ignoreCase## 判斷是否設定了"i" 修飾符用於規定下次符合的起始位置
將字串分割成字串陣列。 1
lastIndex

multiline判斷是否設定了"m" 修飾符

source

#傳回正規表示式的匹配模式 ⑹Global:內建物件
JavaScript 全域屬性
###############################################################################################################################################屬性######描述############Infinity######代表正的無窮大的數值。 ############NaN######指示某個值是不是數字值。 ############undefined######指示未定義的值。 ############

 JavaScript 全域函數

##decodeURI() 解碼某個編碼的URI。 decodeURIComponent()解碼一個編碼的 URI 元件。 encodeURI()把字串編碼為 URI。 encodeURIComponent()把字串編碼為 URI 元件。 escape()對字串進行編碼。 eval()計算 JavaScript 字串,並將它當作腳本程式碼來執行。 isFinite()檢查某個值是否為有窮大的數。 isNaN()檢查某個值是否是數字。 Number()把物件的值轉換成數字。 parseFloat()解析一個字串並傳回一個浮點數。 parseInt()解析一個字串並傳回一個整數。 String()把物件的值轉換成字串。 unescape()對由 escape() 編碼的字串進行解碼。
函數 描述

 ⑺Date物件

Date 物件屬性

######屬性######描述############constructor######傳回對建立此物件的Date 函數的參考。 ############prototype######使您有能力為物件新增屬性和方法。 ############

 Date 物件方法

##getDate() 從Date 物件傳回一個月中的某一天(1 ~ 31)。 getDay()從 Date 物件傳回一週中的某一天 (0 ~ 6)。 getFullYear()從 Date 物件以四位數傳回年份。 getHours()傳回 Date 物件的小時 (0 ~ 23)。 getMilliseconds()傳回 Date 物件的毫秒(0 ~ 999)。 getMinutes()返回 Date 物件的分鐘 (0 ~ 59)。 getMonth()從 Date 物件傳回月份 (0 ~ 11)。 getSeconds()傳回 Date 物件的秒數 (0 ~ 59)。 getTime()傳回 1970 年 1 月 1 日至今的毫秒數。 getTimezoneOffset()傳回本地時間與格林威治標準時間 (GMT) 的分鐘差。 getUTCDate()根據世界時從 Date 物件返回月中的一天 (1 ~ 31)。 getUTCDay()根據世界時從 Date 物件返回週中的一天 (0 ~ 6)。 getUTCFullYear()根據世界時從 Date 物件傳回四位數的年份。 getUTCHours()根據世界時傳回 Date 物件的小時 (0 ~ 23)。 getUTCMilliseconds()根據世界時傳回 Date 物件的毫秒(0 ~ 999)。 getUTCMinutes()根據世界時傳回 Date 物件的分鐘 (0 ~ 59)。 getUTCMonth()根據世界時從 Date 物件傳回月份 (0 ~ 11)。 getUTCSeconds()根據世界時傳回 Date 物件的秒鐘 (0 ~ 59)。 getYear()已被廢棄。 請使用 getFullYear() 方法代替。 parse()傳回1970年1月1日午夜到指定日期(字串)的毫秒數。 setDate()設定 Date 物件中月的某一天 (1 ~ 31)。 setFullYear()設定 Date 物件中的年份(四位數字)。 setHours()設定 Date 物件中的小時 (0 ~ 23)。 setMilliseconds()設定 Date 物件中的毫秒 (0 ~ 999)。 setMinutes()設定 Date 物件中的分鐘 (0 ~ 59)。 setMonth()設定 Date 物件中月份 (0 ~ 11)。 setSeconds()設定 Date 物件中的秒鐘 (0 ~ 59)。 setTime()setTime() 方法以毫秒設定 Date 物件。 setUTCDate()根據世界時設定 Date 物件中月份的一天 (1 ~ 31)。 setUTCFullYear()根據世界時設定 Date 物件中的年份(四位數字)。 setUTCHours()根據世界時設定 Date 物件中的小時 (0 ~ 23)。 setUTCMilliseconds()根據世界時設定 Date 物件中的毫秒 (0 ~ 999)。 setUTCMinutes()根據世界時設定 Date 物件中的分鐘 (0 ~ 59)。 setUTCMonth()根據世界時設定 Date 物件中的月份 (0 ~ 11)。 setUTCSeconds()setUTCSeconds() 方法用於根據世界時 (UTC) 設定指定時間的秒字段。 setYear()已被廢棄。請使用 setFullYear() 方法代替。 toDateString()把 Date 物件的日期部分轉換為字串。 toGMTString()已被廢棄。請使用 toUTCString() 方法代替。 toISOString()使用 ISO 標準傳回字串的日期格式。 toJSON()以 JSON 資料格式傳回日期字串。 toLocaleDateString()根據本地時間格式,把 Date 物件的日期部分轉換成字串。 toLocaleTimeString()根據本機時間格式,把 Date 物件的時間部分轉換成字串。 toLocaleString()根據本機時間格式,把 Date 物件轉換為字串。 toString()把 Date 物件轉換為字串。 toTimeString()把 Date 物件的時間部分轉換為字串。 toUTCString()UTC()根據世界時傳回 1970 年 1 月 1 日 到指定日期的毫秒數。 valueOf() 傳回 Date 物件的原始值。

⑻Object物件

#⑼Array物件

⑽Function物件

#各種錯誤類別物件:

⑴Error

⑵EvalError

⑶RangeError

⑷ReferenceError

⑸SyntaxError

⑹TypeError

JS宿主物件

⑴ 定義:宿主物件就是執行JS腳本的環境提供的物件。 ⑵ 瀏覽器對象:對於嵌入網頁的JS來說,其宿主對象就是瀏覽器提供的對象,所以又稱為瀏覽器對象,如IE、Firefox等瀏覽器提供的對象。

###⑶ 注意:不同的瀏覽器提供的宿主物件可能不同,即使提供的物件相同,其實作方式也大不相同!這會帶來瀏覽器相容問題,增加開發難度。 ######⑷ 宿主物件範例:window,navigator,document等等######⑸ 瀏覽器擴充物件:Active,XML,Debug,Script,VBArray等等########## JS自訂對象############⑴對象字面量方式(透過JSON來創建對象)#########缺點:使用同一個介面創建很多對象,會產生大量的重複程式碼。 #########⑵工廠模式。 #########①工廠模式就是將創建對象的語句放在一個函數裡,透過傳入參數來建立特定對象,最後返回創建的對象。 ######    函數createPerson()能夠根據接受到的參數來建構一個包含所有必要資訊的Person物件。 ######    可以無數次的呼叫這個函數,而每次它都會回傳一個包含2個屬性和一個方法的物件。 ######②缺點:工廠模式雖然可以創建多個相似的對象,但卻無法解決對象標識的問題,即如何知道一個對象的類型。 #########⑶建構子模式#########①缺點:使用建構子的主要問題是:每個方法都要在每個實例上建立一遍。 ######②在ECMAScript中,函數即對象,因此每定義一個函數,也就是實例化了一個物件。 ######③也就是說透過建構函式實例化的多個物件的方法,是多個不同的方法,但它們內部的程式碼以及實現的功能是相同的,這就造成了一定的資源浪費。 #########⑷原型模式#########①js中,每個函數都有一個prototype屬性,它是一個指針,指向一個對象,叫做原型對象。 ######②使用原型模式可以讓所有的實例共享原型物件中的屬性和方法,也就是說,不必再建構函式中定義物件實例的資訊。 ######③缺點:省略了為建構函式傳遞初始化參數這一環節,結果所有實例在預設情況下都會取得相同的屬性值。 ######          原型模式的最大問題是由共享的本質所造成的。原型中所有屬性是許多實例共享的######          此共享對於函數非常適合。對於包含引用類型的屬性來說,問題就比較突出了。 ######④因此,很少單獨使用原型模式。 #########⑸組合使用建構函式模式和原型模式#########①組合使用建構函式模式和原型模式,是建立自訂類型最常見的方式。 ######②建構子模式用於定義實例屬性,而原型模式用於定義方法和共享的屬性。 ######③結果,每個實例都會有自己的一份實例屬性的副本,但同時又共享著對方法的引用,最大限度的節省了記憶體。 #########⑹其他模式#########①動態原型模式:僅在第一次呼叫建構函式時,將方法賦給原型物件的對應屬性,其他範例的處理方式同建構函式模式######②寄生建構函式模式:僅封裝建立物件的程式碼,然後再傳回新建立的對象,仍使用new運算元呼叫######③穩妥建構函式模式:沒有公有屬性,只有私有變數和方法,以及一些get/set方法,用來處理私有變數。 #########更多程式相關知識,請造訪:###程式設計入門###! ! ###
#方法 說明
根據世界時,把 Date 物件轉換為字串。

實例:

var today = new Date();var UTCstring = today.toUTCString();

以上是JavaScript中有哪三種對象的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
Python和JavaScript的未來:趨勢和預測Python和JavaScript的未來:趨勢和預測Apr 27, 2025 am 12:21 AM

Python和JavaScript的未來趨勢包括:1.Python將鞏固在科學計算和AI領域的地位,2.JavaScript將推動Web技術發展,3.跨平台開發將成為熱門,4.性能優化將是重點。兩者都將繼續在各自領域擴展應用場景,並在性能上有更多突破。

Python vs. JavaScript:開發環境和工具Python vs. JavaScript:開發環境和工具Apr 26, 2025 am 12:09 AM

Python和JavaScript在開發環境上的選擇都很重要。 1)Python的開發環境包括PyCharm、JupyterNotebook和Anaconda,適合數據科學和快速原型開發。 2)JavaScript的開發環境包括Node.js、VSCode和Webpack,適用於前端和後端開發。根據項目需求選擇合適的工具可以提高開發效率和項目成功率。

JavaScript是用C編寫的嗎?檢查證據JavaScript是用C編寫的嗎?檢查證據Apr 25, 2025 am 12:15 AM

是的,JavaScript的引擎核心是用C語言編寫的。 1)C語言提供了高效性能和底層控制,適合JavaScript引擎的開發。 2)以V8引擎為例,其核心用C 編寫,結合了C的效率和麵向對象特性。 3)JavaScript引擎的工作原理包括解析、編譯和執行,C語言在這些過程中發揮關鍵作用。

JavaScript的角色:使網絡交互和動態JavaScript的角色:使網絡交互和動態Apr 24, 2025 am 12:12 AM

JavaScript是現代網站的核心,因為它增強了網頁的交互性和動態性。 1)它允許在不刷新頁面的情況下改變內容,2)通過DOMAPI操作網頁,3)支持複雜的交互效果如動畫和拖放,4)優化性能和最佳實踐提高用戶體驗。

C和JavaScript:連接解釋C和JavaScript:連接解釋Apr 23, 2025 am 12:07 AM

C 和JavaScript通過WebAssembly實現互操作性。 1)C 代碼編譯成WebAssembly模塊,引入到JavaScript環境中,增強計算能力。 2)在遊戲開發中,C 處理物理引擎和圖形渲染,JavaScript負責遊戲邏輯和用戶界面。

從網站到應用程序:JavaScript的不同應用從網站到應用程序:JavaScript的不同應用Apr 22, 2025 am 12:02 AM

JavaScript在網站、移動應用、桌面應用和服務器端編程中均有廣泛應用。 1)在網站開發中,JavaScript與HTML、CSS一起操作DOM,實現動態效果,並支持如jQuery、React等框架。 2)通過ReactNative和Ionic,JavaScript用於開發跨平台移動應用。 3)Electron框架使JavaScript能構建桌面應用。 4)Node.js讓JavaScript在服務器端運行,支持高並發請求。

Python vs. JavaScript:比較用例和應用程序Python vs. JavaScript:比較用例和應用程序Apr 21, 2025 am 12:01 AM

Python更適合數據科學和自動化,JavaScript更適合前端和全棧開發。 1.Python在數據科學和機器學習中表現出色,使用NumPy、Pandas等庫進行數據處理和建模。 2.Python在自動化和腳本編寫方面簡潔高效。 3.JavaScript在前端開發中不可或缺,用於構建動態網頁和單頁面應用。 4.JavaScript通過Node.js在後端開發中發揮作用,支持全棧開發。

C/C在JavaScript口譯員和編譯器中的作用C/C在JavaScript口譯員和編譯器中的作用Apr 20, 2025 am 12:01 AM

C和C 在JavaScript引擎中扮演了至关重要的角色,主要用于实现解释器和JIT编译器。1)C 用于解析JavaScript源码并生成抽象语法树。2)C 负责生成和执行字节码。3)C 实现JIT编译器,在运行时优化和编译热点代码,显著提高JavaScript的执行效率。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。