7.ES5新增的一些經常使用的方法

ES5
 
嚴格模式
除了正常運行模式,ECMAscript5添加了第二種運行模式:"嚴格模式"(strict mode)。
顧名思義,這種模式使得Javascript在更嚴格的條件下運行。
 
設立"嚴格模式"的目的,主要有如下幾個:
    消除Javascript語法的一些不合理、不嚴謹之處,減小一些怪異行爲;
    消除代碼運行的一些不安全之處,保證代碼運行的安全;
    提升編譯器效率,增長運行速度;
    爲將來新版本的Javascript作好鋪墊。
 
進入"嚴格模式"的標誌:"use strict";
 
將 "use strict"; 放在腳本文件的第一行,則整個腳本都將以"嚴格模式"運行。
<script>
   "use strict";
   console.log("這是嚴格模式。");
</script>
 
將"use strict"放在函數體的第一行,則整個函數以"嚴格模式"運行。
function strict(){
   "use strict";
   return "這是嚴格模式。";
}
 
嚴格模式對JS的語法和行爲有一些限制:
給未聲明的變量賦值直接報錯,而不是變成全局變量;
禁止this關鍵字指向全局對象;
對象不能有重名的屬性(IE);
函數不能有重名的參數;
......
 
ES5支持狀況:ie9+, chrome 19+, safari 5+, firefox 4+, opera 12+
 
 
ES5新增數組常見方法
indexOf() 方法返回數組中第一個找到的元素位置,若是它不存在則返回-1
 
forEach() 方法爲每一個元素執行對應的方法
 
filter() 方法返回一個新的數組,新數組中的元素是經過檢查指定數組中符合條件的全部元素
 
map() 方法對數組的每一個元素進行必定操做後,返回一個新的數組
 
reduce() 方法接收一個函數做爲累加器,數組中的每一個值(從左到右)開始縮減,最終計算爲一個值
array.reduce(function(total, item, index, array), initialValue)
total:初始值, 或者計算結束後的返回值
initialValue:初始值
 
 
字符串 string
JavaScript的字符串就是用''或""括起來的字符。
 
字符串之間使用 + 號進行拼接。
 
建立字符串:
var str1 = 'abc';
var str2 = new String('abc');
 
length-屬性返回字符串的長度(字符的個數)
str1.length; // 3
 
能夠經過索引訪問字符串中的某個字符:str1[0]、str1[1]
 
字符串常見API
API(Application Programming Interface,應用程序編程接口)是一些預先定義的函數
 
toLowerCase() 方法將整個字符串轉成小寫字母
 
toUpperCase() 方法將整個字符串轉成大寫字母
 
indexOf() 方法返回字符串中子串第一處出現的索引值,沒有匹配返回-1
 
lastIndexOf() 方法返回字符串中子串最後出現的索引值,沒有匹配返回-1
 
slice() 方法從已有字符串中提取部分字符,返回新的字符串
var str = str1.slice(start,end);
slice()返回的子串包括start處的字符,但不包括end處字符
 
split() 方法把一個字符串分割成字符串數組,返回新數組
var str = str1.split('分割符',length);
第一個參數指定分割的符號,第二個參數可選,爲返回數組的長度
 
substr() 方法返回一個從指定位置開始的指定長度的子串
var str = str1.substr(start,length);
參數start必須,字符的起始位置,length參數可選,截取字符串的長度
 
substring() 方法返回字符串中介於兩個指定下標之間的子串
var str = str1.substring(start,end);
包含start處的字符,不包含end處的字符
 
concat() 方法將兩個或多個字符串組合起來,返回一個新的字符串
 
charAt() 方法返回指定索引位置的字符
 
replace() 方法用於在字符串中用一些字符替換另外一些字符,返回替換後的字符串
var newStr = str.replace('abc','替換abc');
 
charCodeAt() 方法返回指定索引處字符的unicode編碼值
 
String.fromCharCode(num1,num2,num3......) 方法根據指定的Unicode編碼值來返回字符串
var str = String.fromCharCode(65,66,67);// 'ABC'
 
 
ASCII、Unicode與編碼字符集
 
編碼字符集:(簡稱字符集,如Unicode、ASCII)
編碼字符集,用一個編碼值來表示一個字符在庫表中的位置,這個值稱爲字符對應於編碼字符集的序號。
 
最先只有127個字母被編碼到計算機裏,也就是大小寫英文字母、數字和一些符號,這個編碼表被稱爲ASCII編碼。
 
ASCII編碼主要針對的是英語,全世界有上百種語言,中國製定了GB2312編碼,日本製定了Shift_JIS編碼,韓國製定了Euc-kr編碼...
 
各國有各國的標準,就會不可避免地出現衝突,結果就是,在多語言混合的文本中,顯示出來會有亂碼。
 
Unicode編碼把全部語言都統一到一套編碼裏,這樣就不會再有亂碼問題了!
 
Unicode 編碼是一個很大的集合,如今的規模能夠容納100多萬個符號。
Unicode 編碼開頭的 128 個和 ASCII 編碼同樣。
編碼字符集Unicode,有UTF-八、UTF-1六、UTF-32等多種字符編碼。
 
Unicode編碼漢字對照表:http://www.chi2ko.com/tool/CJK.htm
相關文章
相關標籤/搜索