回顧
數組的方法
join() concat slice() splice() sort(); sort(compare); push pop尾進 尾出---》彈夾 unshift shift-----》火車站購票
二維數組 遍歷--》嵌套循環 取最大值
function compare(a,b){
return a-b;
}
===========================================================================================================
一、關聯數組 vs 索引數組 *****
1:js 關聯數組使用很是多[js一切都保存關聯數組]
2:索引數下標自動生成,關聯數組下手工自定義
3:關聯數組 length無效.
二、js 加強型的for型 *****
for(var key in stu){
console.log(key);//name age chs
console.log(stu[key]);
}
三、字符串API:js提供經常使用方法 *****
#字符串API,全部API都沒法修改原字符串內容,
都會返回新字符串
1:大小寫轉換
str.toUpperCase(); 將str變量中全部字母轉換大寫
str.toLowerCase(); 將str變量中全部字母轉換小寫
什麼時候使用:乎略大小寫
2:獲取指定位置字符
var str = "abc123";
// 012345
var rs = str[2];
rs = str.charAt(0);
得到指定位置字符的unicode號
rs = str.charCodeAt(0); //97
將unicode數值轉字符
rs = String.fromCharCode(97);
rs['a'];
三、檢索敏感詞位置
var i = str.indexOf(敏感詞,[搜索開始位置]);
i !=-1 找到敏感詞
-1 沒有敏感詞..
#搜索開始位置 默認從0開始
var str = "我今天吃了一個土豆";
var i = str.indexOf("土豆");
if(i != -1){
console.log("您所發表言論,包含敏感詞,不容許發表");
}
lastIndexOf("敏感詞"[,formIndex]);
#搜索最後一個配置敏感詞位置
#獲取子字符串
str.slice(開始位置,結束位置+1); 支持負數
str.substring(開始位置,結束位置+1);不支持負數
str.substr(開始位置[,個數]);
若是沒有個數截取結尾
四、 正則表達式 ****
String中支持正則的API
1:正則表達式:一組特殊字符規則
什麼時候使用:查找 驗證 替換 切割
模糊查找,驗證字符串格式,按照必定規律切割字符串
var qq = "12341234567";
1:string:獲取每個字符
2:判斷是不是數字
3:長度 length >= 5 length <= 12
var email = "123123@tom.com.cn";
正則表達式語法
1:最簡單正則:關鍵字正文
2:備選字符集:字符串中某一位上可選的字符的集合
[備選字符集] "ASJKJNHKAJKSFD455454"
#一個備選字符集,只能規定一位字符
#若是備選字符連續的,用-省略中間字符
#表示除某些字符之外,全部字符都可 ^除了
3:預約義字符集,對經常使用字符集簡寫方式
\d [0-9] 匹配一位數字
\w [0-9a-zA-Z_] 匹配一位 數字,字母 下劃線
\s 匹配一位 空字符 空格 tab 回車換行
. 匹配一位 除了回車換行之外任意字符
小結:
1:預約義字符集語法簡單,規則固定不可變!
\d
2:備選字符集,規則完成自定義,靈活,語法繁瑣
[5-9]
做業1
var msg="別理我,我想靜靜"+"靜靜是誰"; 替換** replace("靜靜",**)
做業2
var msg="no zuo no die no can no bibi"; 敏感詞no /no/ 輸出 敏感詞位置
做業3
// 1 建立正則表達式嚴格匹配 字母+數字 6-8 /^[a-z0-9]{6,8}$/
//2 請用戶輸入用戶名
//3 test()==false 從新輸入
正則表達式