單體內置對象
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 的正切值 |