內置對象有 1.Array 2.string 3. math 4.date
1. array 應用最廣泛 主要是用來存儲一組數據 。
創建 1.使用array構造函數 語法 new Array() ; 也可以直接 Array() 不建議直接Array()
2.使用數組字面量表示法,由 [ ] 表示, 如下
//定義數組 var colors=new Array(15); var cols=[15,16,17,18];
支持多種類型
var infos=[6,'marry',true];
取出info中索引 為1的值 ,注 索引從0 開始
infos[1]; 實際上取到的是 marry
屬性: 1.array.length 返回數組的長度 如上的infos 返回的是3 因為有三個元素
利用array.length 截取長度 例如上面的infos 使用 info.length=2 則第三個元素會被刪除;
同理 array[99]='z', 會導致 array.length=99+1 即使里面沒有一百個數據, 他是最后一個索引加1;
var cols=[15,16,17,18]; cols[20]=120; for (var i=0;i<=cols.length;i++){ console.log(i+','+cols[i]); }
結果 :
array.push(數據) 插入到數組的尾部,返回length
array.unshift (數據) 插入到數組的頭部,返回length
array.pop () 刪除最后一個,返回刪除的值
array.shift () 刪除最后第一個,返回刪除的值
array.reserver() 將數組內容反過來,但是不排序,是將原有順序完全相反
array.join() 將數組連接起來成字符串 例如 array(15,16,17) 使用array.join("-") 得到的結果是 15-16-17 如不指定連接方式 默認是逗號15,16,17
array.sort(sortby )數組排序,不用說,經常用到 默認是 從小到大ASCII碼 括號里可以使用函數
例
var nums=new Array(45,23,12,66,9); nums.sort(function (a,b) { return a-b; }) console.log(nums);
// 結果 從小到大
[9, 12, 23, 45, 66]
var nums=new Array(45,23,12,66,9); nums.sort(function (a,b) { return b-a; }) console.log(nums); // 結果從大到小 [66, 45, 23, 12, 9]
array.concat(arr2,arr3,...) 意思是array 連接arr2合並成一個 : 用於連接兩個或者多個數組
array.slice(start,end) : 從已有的數組中返回選定的元素 start 如果是負數,則從尾部開始算起 end 規定從何處結束 不包含該元素。
array.splice () 方法強大 能刪數組內容 , 能添加數組內容,能修改數組內容
array.splice (index,count) 刪除從index處開始的零個或者多個元素 返回含有本刪除的元素的數組, count是要刪除的項目數量, 如果為0 則不會刪除,如果不設置則刪除從index開始所有值。
array.splice (index,0,item1,item2,item3.....) 插入從index處開始的多個元素 插入到第index 個索引前面
array.splice (index,count,item1,item2,item3.....) 先刪除在插入
array.indexOf(searchvalue,startIndex) 從數組的開頭位置向后查找 searchvalues 需要查找的內容, 必須要填寫, 返回number 查找的項在數組中的位置,沒有找到的情況下返回-1.
array.lastIndexOf(searchvalue,startIndex) 從數組的末尾位置向后查找 searchvalues 需要查找的內容, 必須要填寫, 返回number 查找的項在數組中的位置,沒有找到的情況下返回-1.
2. string
查找
string.charCodeAt(index) 返回string 中 index 位置字符的字符編碼 。
string.charAt(index) 返回string 中 index 位置的字符 。es5 中可以直接用 例 var str='dsadasd' 取出來可以用 str[1] 得到 s 結果
string.indexOf(''searchvalues'') 從一個字符串中搜索給定的子字符串,返回子字符串的位置 找不到為-1
string.LastindexOf(''searchvalues'') 從右側檢測字符串中給定的子字符串位置,返回最后一個出現子字符串的位置 找不到為-1
截取
string.slice(start,end) : 從已有的字符串中截取選定的元素 start 如果是負數,則從尾部開始算起 end 規定從何處結束 不包含該元素。
string.substring(start,end) : 同上 從已有的字符串中截取選定的元素 區別 start 如果是負數 ,自動將參數轉換為0
string.substr(start,len) : 同上 從已有的字符串中截取選定的元素 區別 start 如果是負數 ,會將傳入的負值與字符串的長度相加。 當len 為負數時候 返回空字符串
// 聲明用戶名的變量 結果是 txt var week='index.txt'; var gettxt=week.slice(week.lastIndexOf('.')); console.log(gettxt.substr(1));
string.split (separator) 把一個字符串分割成數組 separator 分隔符
string.replace (a,b) 將a的值 替換成b
string.toUpperCase()將字符串轉換成大寫
string.toLowerCase()將字符串轉換成小寫
案例:駝峰轉換
// 駝峰轉換 方法1 var week='border-left-button'; //berderLeftBotton function turnUp(str,spl) { for (var i=0;i<str.length;i++){ var check=str.indexOf(spl); if (check!=-1){ // 等於-1是 未查詢到 // 截取字符串變大寫 var tran=str.substr(check+1,1).toUpperCase(); //截取那兩個字符串 -和-后面的一個字母 var tex=str.substr(check,2); // 替換成大寫 str=str.replace(tex,tran); } } return str; } var res=turnUp(week,'-'); console.log(res); // 結果 borderLeftButton
//方法二轉換成數組 var week='border-left-buttob'; //berderLeftBotton var arrweek=week.split('-'); for (var i=0; i<arrweek.length;i++){ if (i==0){ //s首字母不需要 continue; }else { //不是首字母轉換 var weekUp=arrweek[i].substr(0,1); arrweek[i]=arrweek[i].replace(weekUp,weekUp.toUpperCase()); } } console.log(arrweek.join('')); // 結果同上
3. math 對象
min() 一組數據的最小值
max() 一組數據的最大值
ceil() 向上取整
floor() 向下取整
round() 四舍五入
abs() 返回絕對值 求絕對值
random() 默認隨機一個 0-1的數據 求 n到m 之間 有 math.random()*((m-n+1)+n )向下取整
4. date 對象
語法 new Date();
功能: 創建一個日期時間對象
返回值: 在不傳參的情況下,返回當前的日期時間對象
getFullYear(): 返回四位數的年份
getMonth(): 返回日期中的月份,返回值未0-11 0標識1一月 11標識 12月
getDate(): 返回月份中的天數
getday(): 返回星期 返回值未0-6
getHours(): 返回小時
getMinutes():返回分
getSeconds(): 返回秒
getTime(): 返回標識日期的毫秒數
設置年月日時分秒以及星期的方法
setFullYear(): 設置四位數的年份
setMonth(): 設置日期中的月份,返回值未0-11 0標識1一月 11標識 12月
setDate(): 設置每月的天數
setDay(): 設置星期 返回值未0-6
settHours(): 設置小時
setMinutes():設置分
setSeconds(): 設置秒
setTime(): 設置標識日期的毫秒數