軟體測試學習教程—JavaScript內建物件
內建物件的定義是:“由 ECMAScript 實現提供的、不依賴宿主環境的物件,這些物件在 ECMAScript 程式執行之前就已經存在了。” ECMA-262 只定義了兩個內建物件: Global 和 Math 。
Global 物件
Global( 全域性 ) 物件是 ECMAScript 中一個特別的物件,因為這個物件是不存在的。在 ECMAScript 中不屬於任何其他物件的屬性和方法,都屬於它的屬性和方法。所以,事實上,並不存在全域性變數和全域性函式;所有在全域性作用域定義的變數和函式,都是 Global 物件的屬性和方法。
內建的屬性和方法:
URI 編碼方法
URI 編碼可以對連結進行編碼,以便傳送給瀏覽器。它們採用特殊的 UTF-8 編碼替換所有無效字元,從而讓瀏覽器能夠接受和理解。
encodeURI() 不會對本身屬於 URI 的特殊字元進行編碼,例如冒號、正斜槓、問號和 # 號;而 encodeURIComponent() 則會對它發現的任何非標準字元進行編碼
var b = '//Test 王 ';
alert(encodeURI(b)); // 只編碼了中文
var b = '//Test 王 ';
alert(encodeURIComponent(b)); // 特殊字元和中文編碼了
一般來說 encodeURIComponent() 使用頻率要高一些。
使用了 URI 編碼過後,還可以進行解碼,透過 decodeURI() 和 decodeURIComponent() 來進行解碼
var b = '//Test 王 ';
alert(decodeURI(encodeURI(b))); // 還原
var b = '//Test 王 ';
alert(decodeURIComponent(encodeURIComponent(b))); // 還原
eval() 方法
eval() 方法主要擔當一個字串解析器的作用,他只接受一個引數,而這個引數就是要執行的 JavaScript 程式碼的字串。
eval('var b = 100'); // 解析了字串程式碼
alert(b);
eval('alert(100)');
eval('function b() {return 123}'); // 函式也可以
alert(b());
eval() 方法的功能非常強大,但也非常危險。因此使用的時候必須極為謹慎。特別是在使用者輸入資料的情況下,非常有可能導致程式的安全性,比如程式碼注入等等。
Global 物件屬性
Global 物件包含了一些屬性: undefined 、 NaN 、 Object 、 Array 、 Function 等等。
alert(Array); // 返回建構函式
window 物件
Web 瀏覽器可以使用 window 物件來實現一全域性訪問。
alert(window.Array);
Math 物件
ECMAScript 還為儲存數學公式和資訊提供了一個物件,即 Math 物件。
Math 物件的屬性
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 的平方根 |
alert(Math.E); //
alert(Math.LN10);
alert(Math.LN2);
alert(Math.LOG2E);
alert(Math.LOG10E);
alert(Math.PI);
alert(Math.SQRT1_2);
alert(Math.SQRT2); //
min() 和 max() 方法
Math.min() 用於確定一組數值中的最小值。 Math.max() 用於確定一組數值中的最大值。
alert(Math.min(21,14,31,16,43,85,70,19,36)); // 最小值
alert(Math.max(41,17,82,30,11,29,26,10,37,25)); // 最大值
舍入方法
Math.ceil() 執行向上舍入,即它總是將數值向上舍入為最接近的整數;
Math.floor() 執行向下舍入,即它總是將數值向下舍入為最接近的整數;
Math.round() 執行標準舍入,即它總是將數值四捨五入為最接近的整數;
alert(Math.ceil(25.9)); //26
alert(Math.ceil(25.5)); //26
alert(Math.ceil(25.1)); //26
alert(Math.floor(25.9)); //25
alert(Math.floor(25.5)); //25
alert(Math.floor(25.1)); //25
alert(Math.round(25.9)); //26
alert(Math.round(25.5)); //26
alert(Math.round(25.1)); //25
random() 方法
Math.random() 方法返回介於 到 1 之間一個隨機數,不包括 和 1 。如果想大於這個範圍的話,可以套用一下公式:
值 = Math.floor(Math.random() * 總數 + 第一個值 )
alert(Math.floor(Math.random() * 10 + 1)); // 隨機產生 1-10 之間的任意數
for (var i = 0; i<10;i ++) {
document.write(Math.floor(Math.random() * 10 + 5)); //5-14 之間的任意數
document.write('<br />');
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69914734/viewspace-2653801/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 軟體測試學習教程—軟體測試質量
- 軟體測試學習教程—軟體測試基本知識
- 軟體測試學習教程—迴歸測試
- 軟體測試學習教程——JDBC配置JDBC
- 軟體測試學習教程—軟體測試基礎理論五
- 軟體測試學習教程—軟體測試基礎理論六
- 軟體測試學習教程—軟體測試基礎理論四
- 軟體測試學習教程—軟體測試基礎理論三
- 軟體測試學習教程——LoadRunner實現介面測試
- 軟體測試學習教程——JDBC開發JDBC
- 軟體測試學習教程——JDBC介紹JDBC
- 軟體測試學習教程——WEB測試之JS記憶體WebJS記憶體
- 軟體測試培訓學習哪些內容?
- 軟體測試學習教程—Web測試之正規表示式Web
- 軟體測試學習 ——五種軟體測試模型模型
- 軟體測試學習教程——HP Loadrunner12.50安裝教程
- 軟體測試學習教程—Jmeter元件介紹(二)JMeter元件
- 軟體測試學習教程——【大蟒蛇】python基礎Python
- 軟體測試整理學習
- 學習旅途(軟體測試)
- 軟體測試工程師需要學習什麼內容工程師
- 軟體測試學習教程——Python實現反射機制Python反射
- 軟體測試學習教程——Python SMTP傳送郵件Python
- 軟體測試學習教程——Java實現氣泡排序Java排序
- 軟體測試培訓分享:學習能力差可以學習軟體測試嗎
- 【分享】—如何學習軟體測試
- 【軟體測試】學習筆記筆記
- 軟體測試學習路線
- 2020版軟體測試全新4.0教程震撼來襲,不一樣的軟體測試學習路
- 軟體測試學習網站有哪些?怎麼學軟體測試呢?學習網站
- 參加軟體測試培訓需要學習哪些內容
- 參加軟體測試學習課程有哪些內容?
- 軟體測試學習教程——CentOS 7 修改網路卡設定CentOS
- 軟體測試教程之手機軟體測試方法
- javascript的學習測試JavaScript
- 軟體測試學習——移動端功能測試分析
- 軟體測試的具體學習路線
- 軟體測試學習教程——過載new或delete來檢測記憶體洩漏delete記憶體