摘要:第二個由于找了第一個修改正則表達式字符串中應用正則字符串切割字符串替換替換一次字符串查找返回一次查到的下標正則的使用點擊按鈕后執行函數獲取輸入框為的輸入框獲取文字您輸入的字符串格式不正確正確您輸入的內容為空簡介
1. 數組 1.1 創建數組
//一、自變量創建數組 // 1-通過字面量創建一個空數組 var arr1 = []; console.log(arr1) console.log(typeof arr1); // object // 2-通過字面量創建一個帶有元素數組 var arr2 = [1, 2, "abc", null, true]; console.log(arr2); // 二、通過Array類型創建數組 // 1-創建空數組 var arr3 = new Array(); console.log(arr3); // 2-創建一個最初可以有五個元素的數組,數組的容量為5 var arr4 = new Array(5); console.log(arr4) //3-創建一個帶有四個元素的數組 var arr5 = new Array(1,2,"a","y"); console.log(arr5);1.2 數組元素的訪問及修改
// 創建一個數組 var arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9]; // 1-數組下標訪問 // 2 數字的length屬性 // 通過lenth屬性增加元素個數 arr1.length = 13; console.log(arr1); // 減少 arr1.length = 6; console.log(arr1); //3 通過索引增加數據 如果索引不連續 就會出現空的 arr1[6] = 7; console.log(arr1); //4-刪除數據delete // 使用delete刪除不會改變數組的長度 刪除的元素用undefined補全 var arr3 = [1, 2, 3, 4, 5] delete arr3[2]; console.log(arr3); console.log(arr3[2]); // undefined1.3 數組的方法
var arr1 = [1, 2, 3, 4]; // push 向數組末尾添加元素 // 可以同時添加一個或多個元素 arr1.push(6); console.log(arr1); arr1.push(7,8,9); console.log(arr1); // unshift 向數組開頭添加元素 // 可以同時添加一個或多個元素 // 刪除元素 pop() 移除最后一個元素 arr1.pop() console.log(arr1); // 移除第一個元素 arr1.shift(); console.log(arr1); // 反轉數組 var arr2 = [1, 2, 3]; arr2.reverse(); console.log(arr2); // join(str) var arr3 = [1, 2, 3]; var str3 = arr3.join("*"); console.log(str3); // indexOf() var arr4 = [1, 2, 3, 4, 5, 3]; console.log(arr4.indexOf(3)); //返回3元素 第一次出現的下標 // lastIndexof // slice(start, end):截取數組 // 返回一個新數組 var arr5 = [1, 2, 3, 4, 5, 6, 7, 8, 9]; var arr6 = arr5.slice(2); // 下標2到末尾 console.log(arr6); var arr7 = arr5.slice(2,6); // 不包含 下標6 console.log(arr7); // splice(index, count, [item1, item2,...]) // splice可以進行增加修改或刪除元素的操作 // index:下標 count :元素個數 // [item1 ..] 新元素 // splice直接操作原數組,對原數組有影響 // 刪除:只寫index 與count // 返回:一個刪除元素的數組 var arr8 = [1, 2, 3, 4, 5, 6, 7]; var arr9 = arr8.splice(2,4); // 下標2開始刪除4個元素 arr8=[1, 2, 7] console.log(arr9); // arr9 = [3, 4, 5, 6] console.log(arr8); // 添加 // 如果執行添加元素的操作,count的值為0 var arr10 = [1, 2, 3, 4] var arr11 = arr10.splice(2,0, 100,200,300); console.log(arr11); // [] 沒刪除 console.log(arr10); // [1,2,100,200,300,3,4] // 替換 var arr12 = [1,2,3,4]; var arr13 = arr12.splice(2,2,100,200); console.log(arr13); // [3, 4] console.log(arr12); // [1,2,100,200] // sort:排序 按照ASCII 排序 var arr14 = [3, 17, 19, 2, 0, 1]; arr14.sort(); console.log(arr14); // 參數傳入排序 function sortNumber(a,b){ return a - b; } arr14.sort(sortNumber); console.log(arr14); // 檢測數組的方法 var arr15 = [1, 2, 3, 4]; console.log(arr15 instanceof Array); // true console.log(arr15.constructor === Array); // true2. Date的方法 2.1 創建Date
// 創建 // 1、Date() 函數直接創建時間 返回當前時間 var date1 = Date(); console.log(date1); //中國標準時間 console.log(typeof date1); //string //2、Date對象創建 // 2.1 不帶參數 var date2 = new Date(); // 好處是可以設置時間 console.log(date2); // object // 2.2、構造方法傳入參數 // 傳入格式 // 2018-5-10 12:12:12 // 2018-5-10 // 2018-05-10 12:12:12 // 2018-05-10 // 2015/5/10 12:12:12 //2018/05/10 12:12:12 var date3 = new Date("2018-5-10 12:12:12"); console.log(date3); var date4 = new Date("2018-05-10 12:12:12"); console.log(date5); var date5 = new Date("2018/05/10 12:12:12"); console.log(date6); var date6 = new Date("2018-05-09"); // 用 / 也可以 console.log(date6); // Wed May 09 2018 08:00:00 GMT+0800 (中國標準時間) // 從00:00:00開始 與上面差8小時 而 / 加0不加0是沒有區別的 var date7 = new Date("2018-5-9"); console.log(date7); // "Wed May 09 2018 00:00:00 GMT+0800 (中國標準時間)" // 2.3 傳入參數: 格式(年月日時分秒毫秒) 會進位 var date8 = new Date(2015, 5, 1, 12, 32, 25); //月從0開始數 5代表6月!!! console.log(date8); // 2.4 傳入一個參數:格式(毫秒) var date9 = new Date(2000) console.log(date9)2.2 Date的方法
var date1 = new Date(); console.log(date1.getFullYear()); console.log(date1.getMonth()); console.log(date1.getDate()); console.log(date1.getDay()); //星期 console.log(date1.getHours()); console.log(date1.getMinutes()); console.log(date1.getSeconds()); console.log(date1.getMilliseconds()); // 距離1970-01-01的毫秒數 console.log(date1.getTime()); // 設置年份 ....星期一般不用設置 date1.setFullYear(2015); // date.setDate(); console.log(date1); // 裝換成字符串 包含年月日分時秒 console.log(date1.toLocaleString()); // 包含年月日 console.log(date1.toLocaleDateString()); // 包含分時秒 console.log(date1.toLocaleTimeString()) // 返回該日期距離1970年 1月1 日 0點的毫秒數 console.log(Date.parse("2016-10-10")); // 日期的運算 var d6 = new Date(); var d7 = new Date(2016, 10, 11); console.log(d6-d7); // 毫秒數3. 正則表達式 3.1 創建正則表達式
// 創建正則表達式 // 1、對象方法創建 // new RegExp("正則表達式","模式"); // g:全局查找 // i:不區分大小寫 var r1 = new RegExp("nice"); var r2 = new RegExp("nice","g") var r3 = new RegExp("nice","i") var r4 = new RegExp("nice","gi") // 2、字面量創建 var r5 = /nice/; var r6 = /nice/gi; // var r7 = /[a-z]/;3.2 正則的方法
var str1 = "today is very good good Good" var r1 = /good/gi; // 1、test():查找字符串中是否有符合要求的字符串 // 返回boolean var result = r1.test(str1); console.log(result) // true //2、exce():查找字符串中是否有符合要求的字符串 // 返回值類型:數組或null // 返回數組 代表可以找到 // 返回null 代表查找結束或沒有找打 //當第一次執行exec時,從字符串開頭開始查找,如果找到,返回匹配到的 //字符串和下標,當再一次執行時候,繼續向下查找,返回匹配到下一個字符串 // 如果返回null 代表找不到或查找結束,然后下次執行從頭查找 // exec:會記錄已經查找過的下標 // 當text與exec同時使用,test檢驗字符串時,如果能夠符合要求 // 會記錄找到的下標。 var resu1 = r1.exec(str1); console.log(resu1); // good index 19 第二個good 由于test找了第一個good var resu2 = r1.exec(str1); console.log(resu2); // Good index 24 var resu3 = r1.exec(str1); console.log(resu3); // null var resu4 = r1.exec(str1); console.log(resu4); // good index 14 // 3、compile():修改正則表達式 r1.compile("nice"); /* r1 = /nice/ */ console.log(r1) // /nice/3.3 字符串中應用正則
// 字符串切割 str1="a b c d f" console.log(str1.split(/ +/)) // 字符串替換 var str2 = "nice good nice good" console.log(str2.replace("nice", "bad")) // 替換一次 console.log(str2.replace(/nice/g, "bad")); // 字符串查找 var str3 = "nice good nice good nice"; console.log(str3.search(/Good/i)); //返回一次查到的下標3.4 正則的使用
// 點擊按鈕后 執行func函數 function func () { //獲取輸入框 var i1 = document.getElementById("in1"); // id為in1的input輸入框 //獲取文字 var str1 = i1.value; IsString(str1) } function IsString (str) { if(str.length!=0){ reg = /^[a-zA-Z0-9_]+$/; if(!reg.test(str)){ alert("您輸入的字符串格式不正確") }else{ alert("正確") } }else{ alert("您輸入的內容為空") } }
Javascript BOM簡介
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/95016.html
摘要:類型裝換轉為數字類型會試圖將字符串轉為整型如果失敗返回如果前面是空格數字正負號時,當碰到第一個不是數字時停止裝換如果不是數字空格直接返回與沒有太大區別除了以下幾條轉為類型轉為類型在瀏覽器控制臺中字符類型是黑色的數字是藍色的其他類型轉 1.類型裝換 1.1 轉為數字類型 // Number console.log(Number(undefined)); //NaN console.l...
摘要:提取字符串的一個子串,的一個變體提取字符串的一個子串返回指定字符串的一份副本都轉化為小寫返回指定字符串的一份副本都轉化為大寫返回指定字符串的一份副本,其中前后的空白字符都已刪除返回原始的字符串值。 Arguments callee 指代當前正在執行的函數 length 傳遞給函數的參數個數,以及Arguments對象中數組元素的個數 Array 構造函數 new Array()...
摘要:注每個內置對象都是原生對象,一個內置的構造函數是一個內置的對象,也是一個構造函數。從對象返回月份。以毫秒設置對象。刪除數組的第一個元素,返回值是刪除的元素。對象屬性創建該正則對象的構造函數。對象當以非構造函數形式被調用時,等同于。 內置對象與原生對象 內置(Build-in)對象與原生(Naitve)對象的區別在于:前者總是在引擎初始化階段就被創建好的對象,是后者的一個子集;而后者包括...
摘要:簡言在表單驗證中,經常會用正則表達式做出生日期校驗。聲明本文目的是為了闡述如何編寫一個正則表達式的過程。綜上所述,正則表達式是強大的,但并不是萬能的,因此不要過份地依賴和濫用正則。 簡言 在表單驗證中,經常會用正則表達式做出生日期校驗。本文把出生日期分割成幾個部分,分步地介紹了實現一個出生日期校驗的完整過程。相信您在理解了本篇的內容后,對如何編寫和如何應用正則表達式會有進一步的理解和體...
摘要:早已實現了正則命名分組提案,只是我們很少使用,本文將介紹的正則命名分組。所有這些問題,都可以通過正則命名分組來解決。該名稱必須是合法的標識符。 前言 以往我們只是習慣于通過數組下標來訪問正則匹配到的分組,但分組達到4、5個時,標識起來就會非常麻煩。V8早已實現了正則命名分組提案,只是我們很少使用,本文將介紹JS的正則命名分組。 以往的做法 假設要使用正則匹配一個日期的年月日,以往我們會...
閱讀 3573·2021-10-11 10:59
閱讀 1591·2021-09-29 09:35
閱讀 2259·2021-09-26 09:46
閱讀 3771·2021-09-10 10:50
閱讀 953·2019-08-29 12:17
閱讀 821·2019-08-26 13:40
閱讀 2433·2019-08-26 11:44
閱讀 2103·2019-08-26 11:22