5.7 Global對象
阿新 • • 發佈:2018-01-20
%20 .com rip markdown 其他 upper 特殊 down str
5.7 Global對象
encodeURI encodeURIComponent decodeURI decodeURIComponent
用特殊的utf-8編碼替換所有無效的字符,從而讓瀏覽器能理解
var uri = "http://www.baidu.com/illegal value.html#start"; l(encodeURI(uri));//http://www.baidu.com/illegal value.html#start l(encodeURIComponent(uri));//http%3A%2F%2Fwww.baidu.com%2Fillegal%20value.html%23start l(decodeURI(uri));//http://www.baidu.com/illegal value.html#start l(decodeURIComponent(uri));//http://www.baidu.com/illegal value.html#start
eval 像一個完整的ECMAScript解析器
嚴格模式下可能,外部訪問不了eval中創建的任何變量和參數
Gobal對象的屬性
undefined NaN Infinity Object Array Function Boolean String Number
Date RegExp Error EvalError RangeError ReferenceError SyntaxError TypeError URIError
window 對象
在全局作用域中聲明的所有變量和函數,都變成了window對象屬性
var color = "red"; function sayColor(){ l(window.color); } window.sayColor();//red var global = function(){ return this; }
Math 對象的屬性
Math.e Math.LN10 Math.LN2 Math.LOG2E Math.LOG10e Math.PI Math.SQRT1_2 Math.SQRT2
min max 方法
var max = Math.max(3, 54, 32, 16); l(max);//54 var min = Math.min(3, 54, 32, 16); l(min);//3 //這個技巧的關鍵是把Math對象作為apply()的第一個參數,從而正確設置this var values = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; var max = Math.max.apply(Math, values); l(max);//10
ceil floor round
l(Math.ceil(25.9)); //26 l(Math.ceil(25.5));// 26 l(Math.ceil(25.1));// 26 l(Math.floor(25.9));//25 l(Math.floor(25.5));//25 l(Math.floor(25.1));//25 l(Math.round(25.9));//26 l(Math.round(25.5));//26 l(Math.round(25.1));//25
random 方法
// 1-10 var num = Math.floor(Math.random() * 10 +1); l(num); // 2-10 var num = Math.floor(Math.random() * 9 + 2); l(num); // 隨機函數 function selectForm(lowerValue, upperValue){ var choices = upperValue - lowerValue + 1; return Math.floor(Math.random()* choices + lowerValue); } var num = selectForm(2, 10); l(num); var colors = [‘red‘, ‘green‘, ‘blue‘, ‘yellow‘, ‘black‘, ‘purple‘, ‘brown‘]; var color = colors[selectForm(0, colors.length - 1)]; l(color);
其他方法
Math.abs() Math.exp() Math.log() Math.pow() Math.sqrt() Math.acos()
5.7 Global對象