摘要:單體內置對象對單體內置對象的定義是由實現提供的,不依賴于宿主環境的對象,這些對象在程序執行就已經存在了。對象還為保存數學公式和信息提供了一個公共位置,即對象。舍入方法執行向上舍入向下舍入四舍五入方法方法返回一個的隨機數。
單體內置對象
ECMA262 對單體內置對象的定義是:“由ECMAScript 實現提供的,不依賴于宿主環境的對象,這些對象在ECMAScript 程序執行就已經存在了。”
Global對象Global(全局)對象是不存在的,它不屬于其他任何對象的屬性和方法,最終都是它的屬性和方法;所有在全局作用域中定義的屬性和函數,都是Global的對象的屬性。
URI編碼方法
encodeURI()不會對本身屬于URI的特殊字符進行編碼,例如:冒號、正斜杠、問號和井號
decodeURI()對encodeURI()編碼的字符進行解碼
encodeURIComponent()會對任何非標準字符進行編碼
decodeURIComponent()對encodeURIComponent()編碼的字符進行解碼
eval()方法
eval()只接收一個參數,即要執行的字符串
eval("alert("hi")"); //等同于alert("hi"),打印hi eval("var box = "Hello world";"); //打印Hello world eval("function sayHi(){alert("hi");}"); sayHi(); //打印hi
在eval()中創建的任何變量或函數都不會被提升,因為值解析代碼的時候,它們被包含在一個字符串中;它們只在eval()執行的時候創建。
PS:在使用eval()時必須極為謹慎,特別是在用它執行用戶輸入數據的情況下。否則,可能會有惡意用戶輸入威脅你的站點或應用程序安全的代碼(即所謂的代碼注入)。
Global對象屬性
屬性 | 方法 | 屬性 | 方法 |
---|---|---|---|
undefined | 特殊值undefined | Date | 構造函數Date |
NaN | 特殊值NaN | RegExp | 構造函數RegExp |
Infinity | 特殊值Infinity | Error | 構造函數Error |
Object | 構造函數Object | EvalError | 構造函數EvalError |
Array | 構造函數Array | RangeError | 構造函數RangeError |
Function | 構造函數Function | ReferenceError | 構造函數ReferenceError |
Boolean | 構造函數Boolean | SyntaxError | 構造函數SyntaxError |
String | 構造函數String | TypeError | 構造函TypeError |
Number | 構造函數Number | URIError | 構造函數URIError |
window對象
ECMAScript 雖然沒指出如何直接訪問 Global對象,但Web 瀏覽器都是將這個全局對象作為window對象的一部分加以實現的。
Math對象ECMAScript 還為保存數學公式和信息提供了一個公共位置,即Math對象。
Math對象提供的計算功能執行起來要比自己編寫JavaScript 計算程序快得多。
Math對象的屬性
屬性 | 說明 |
---|---|
Math.E | 常量e |
Math.LN10 | 10的自然對數 |
Math.LN2 | 2的自然對數 |
Math.LOG2E | 以2為底e的對數 |
Math.LOG10E | 以10為底e的對數 |
Math.PI | 常量π |
Math.SQRT1_2 | 1/2的平方根 |
Math.SQRT2 | 2的平方根 |
min()和max()方法
min()和max()方法用于確定一組數值中的最小值和最大值。
舍入方法
Math.ceil()執行向上舍入
Math.floor()向下舍入
Math.round()四舍五入
random()方法
random()方法返回一個[0,1)的隨機數。
可封裝成一個函數:
function selectFrom(start,end){ var choices = end - start +1; return Math.floor(Math.Random()*choices + start); } alert(slectFrom(5,9)) //打印5-9之間的隨機數
其他方法
方法 | 說明 | 方法 | 說明 |
---|---|---|---|
Math.abs(num) | 返回num的絕對值 | Math.asin(x) | 返回x的反正弦值 |
Math.exp(num) | 返回Math.E的num次冪 | Math.atan(x) | 返回x的反正切值 |
Math.log(num) | 返回num的自然對數 | Math.atan2(y,x) | 返回y/x的反正切值 |
Math.pow(num,power) | 返回num的power次冪 | Math.cox(x) | 返回x的余弦值 |
Math.sqrt(num) | 返回num的平方根 | Math.sin(x) | 返回x的正弦值 |
Math.acos(x) | 返回x的反余弦值 | Math.tan(x) | 返回x的正切值 |
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/94504.html
摘要:單體內置對象單體內置對象就是開發人員不必顯式地實例化內置對象,因為他們已經實例化了。前面的章節討論過了大多數內置對象,還定義了兩個單體內置對象和。 單體內置對象 單體內置對象就是開發人員不必顯式地實例化內置對象,因為他們已經實例化了。前面的章節討論過了大多數內置對象,ECMA-262 還定義了兩個單體內置對象:Global 和Math。 Global 對象 所有在全局作用域中定義的屬性...
摘要:單體內置對象對內置對象的定義是由實現提供的不依賴于宿主環境的對象,這些對象在程序執行之前就已經存在了。還定義了兩個單體內置對象和。此外,所有原生引用類型的構造函數,像和,也都是對象的屬性。 單體內置對象 ECMA-262 對內置對象的定義是「由 JavaScript 實現提供的、不依賴于宿主環境的對象,這些對象在 JavaScript 程序執行之前就已經存在了」。意思就是說,開發人員不...
摘要:單體模式有以下優點用來劃分命名空間,減少全局變量數量。通常我們使用操作符創建單體模式的三種選擇,讓構造函數總返回最初的對象使用全局對象來存儲該實例不推薦,容易全局污染。實現該工廠模式并不困難,主要是要找到能夠穿件所需類型對象的構造函數。 介紹 最近開始給自己每周訂個學習任務,學習結果反饋為一篇文章的輸出,做好學習記錄。 這一周(02.25-03.03)我定的目標是《JavaScri...
摘要:社區團隊高級軟件工程師補充說這產生了大量浪費的資源。和大會日期會議日程通告日期年月日會議活動舉辦日期年月至日和贊助方案和多元化獎學金現正接受申請和即將首次合體落地中國 VSCO:移動應用如何通過云原生節省70%的EC2賬單 showImg(https://segmentfault.com/img/bVboP4E?w=721&h=440); 公司:VSCO地點:加州奧克蘭行業:照片移動應...
閱讀 2883·2021-11-24 09:39
閱讀 2455·2019-08-30 15:53
閱讀 3025·2019-08-30 13:47
閱讀 1296·2019-08-30 12:50
閱讀 1481·2019-08-29 16:31
閱讀 2642·2019-08-29 13:14
閱讀 1559·2019-08-29 10:55
閱讀 790·2019-08-26 13:32