? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? day05
一、正則對象
1、RegExp 對象的創(chuàng)建方式
? var reg=new?RegExp ("表達式");? //開發(fā)中基本不用
var reg=/^表達式$/;? //直接量創(chuàng)建,開發(fā)中常用
2、注意:
直接量創(chuàng)建存在辯解,^代表開始,$代表結束
直接量創(chuàng)建的對象,正則別用引號,要用/..../?
3、test方法
格式:正則對象.test(String);
用來校驗字符串是否匹配正則,全部字符匹配返回ture,否則返回false
4、正則對象使用注意事項
/^表達式$/ 只要有無法成立正則的字符存在即為false,前部符合為true,試用于表單校驗
/表達式/? 只要有成立的正則的字符存在即為true,全部不符合為false,適用于字符串查找,替換
二、js數(shù)組對象
1、 js數(shù)組的特征
js數(shù)組可以看做java中的ArrayList集合
? 數(shù)組中的每一個成員沒有類型限制,即可以存放任意類型
數(shù)組的長度可以自動修改
2、js數(shù)組的四中創(chuàng)建方式
var arr=[1,2,3,4,"a",true]? ?//常用的js數(shù)組
var arr=new Array();? ? //數(shù)組的長度默認為0
var arr= new Array(4);? //數(shù)組的長度為4,每個元素是undefined ,顯示時有可能為空串
var arr= new Array(1,2);? //數(shù)組元素是1和2
3、js數(shù)組的常用屬性/方法
lenght? 設置或返回數(shù)組中元素的數(shù)目
join()? ? 把數(shù)組的所有元素放入一個字符串,元素通過制定的分隔符進行分隔
pop() 刪除并返回數(shù)組的最后一個元素
push() 向數(shù)組的末尾添加一個元素,并返回新的長度
reverse()? 顛倒數(shù)組中元素的順序(物理翻轉,就是把元素的下標進行互換)
0? 1? 2??
a? b? ?c
c? b? ?a
三、全局函數(shù)(global)
執(zhí)行eval() 計算javaScript字符串,并把它作為甲苯代碼來執(zhí)行
作用:用于增強程序的擴展性
注:只可以傳遞原始數(shù)據(jù)類型String,傳遞String對象無作用
編碼解碼
URL/URI 編碼: 中文及特殊符號會被編碼為“%16進制”的格式
作用:保證數(shù)據(jù)傳遞的完整性
encodeURI()? 把字符串編碼為URL
decodeUPI() 解碼某個編碼的URI
URI和URL的區(qū)別
URI是同意資源標識符,標識資源的詳細名稱,包含資源名
URL是統(tǒng)一資源定位器,定位資源的網(wǎng)絡位置,包含http://
資源:可以通過瀏覽器訪問的信息同城為資源(圖片、文本、HTML、CSS)
例如:
http://www.beicai.com/? ?是URL
/index.html? ? ? ? ? ? ? ? ? ? ?是URI
http://www.beicai.com/index.html? ? 既是URL,也是URI
四、字符串轉數(shù)字
parselnt()解析一個字符串并返回一個整數(shù),小數(shù)點后面部分不關注
parseFloat()解析一個字符串并返回一個浮點數(shù)
注:
11.5a55? parseInt? 結果11? ?parseFloat? 結果11.5
b22.8? 停止運轉,返回NaN(Not a Number)
五、自定義函數(shù)和自定義方法
1、函數(shù)簡述及作用
作用: 增強代碼的復用性
?函數(shù)格式:??
function? 方法名 (參數(shù)列表){
? ?函數(shù)體
}
函數(shù)定義必須要用小寫的function
無需定義返回值類型,直接在function后面寫方法名
參數(shù)的定義無需使用var關鍵字,否則報錯
函數(shù)體,return可以不寫,也可以return具體值,或者僅僅寫return; 結束
2、函數(shù)使用的注意事項
(1)js函數(shù)調用執(zhí)行完畢一定有返回值,值及類型根據(jù)return決定,如果未return,返回值未undefined
(2)js函數(shù)同名,則不存在方法重載,只有方法相互覆蓋,最后定義的函數(shù)覆蓋之前的定義
(3)js僅根據(jù)方法名來調用函數(shù),即使實參與函數(shù)的形象不匹配,也不會影響正常調用
六、自定義對象
function構造函數(shù)
無形參格式:
function 對象名(){
函數(shù)體
}
帶參數(shù)格式:
function 對象名(參數(shù)列表){
函數(shù)體
}
有屬性格式:
function 對象名(){
this.屬性名1=屬性值1;
this.屬性名2=屬性值2;
}
無需定義,自由的對對象賦予屬性及值
? 對象.屬性名1=屬性值1;
? 對象.屬性名2=屬性值2;
應用場景:適用于對象的構建及代碼復用
2、對象直接量
格式: var 對象名 = {屬性名1:"屬性值1",屬性名2="屬性值2",....}
注:該方式直接創(chuàng)建出實例對象,無需構造函數(shù),無需再new創(chuàng)建實例對象,直接適用即可
應用場景:適用于快速常見實例對象及數(shù)據(jù)封裝
七、BOM對象(瀏覽器對象模型)
1、BOM對象是什么,有什么用?
作用:用來執(zhí)行瀏覽器的相關操作
一般情況下,window代表BOM對象
window對象是js的內置對象,使用window對象調用方法時可以省略window不寫
例如:window.alert() 只寫為 alert();
2、消息框
alert()? 警告框 用來彈出警告消息
注: 不同瀏覽器顯示的組件樣式不同
confirm()確認框,用于告知用戶信息并收集用戶的選擇
?該方法有返回值,用戶通過選擇確定或者取消,方法結束會返回boolean類型的值
確定返回true
取消返回false



