1.数组API数组
(1) forEach 遍历全部元素 var arr = [1,2,3] arr.forEach(function( item,index ){ //参数顺序规定 item , index console.log(index,item) //遍历数组全部元素 }) (2) every 判断全部元素是否都符合条件 var arr = [1,2,3] var result = arr.every(function( item,index ){ //注意参数顺序 if( item < 4 ){ //用来判断全部的数组元素都知足一个条件 return true; } }) console.log(result) //true 都符合,不然false (3) some 判断是否至少有一个元素符合条件 var arr = [1,2,3] var result = arr.some(function( item,index ){ //注意参数顺序 if( item < 2 ){ //用来判断全部的数组元素,只要有一个知足条件便可 return true; } }) console.log(result) //true (4) sort 排序 var arr = [1,4,2,3,5] var arr2 = arr.sort(function (a, b){ // return a - b //从小到大排序 return b - a //从大到小排序 }) console.log(arr2) //[5,4,3,2,1] (5) map 对元素从新组装,生成新数组 var arr = [1,2] var arr2 = arr.map(function (item, index){ //注意参数顺序 return '<b>'+ item + '</b>' //将数组元素从新封装并返回 }) console.log(arr2) //["<b>1</b>","<b>2</b>"] (6)filter 过滤符合条件的元素 var arr = [1,2,3] var arr2 = arr.filter(function (item, index){ if( item >= 2){ //经过某一个条件过滤数组 //注意参数顺序 return true } }) console.log(arr2) //[2,3]
2.对象API缓存
var obj = {a:10,b:20,c:30} var key for (key in obj){ if(obj.hasOwnProperty(key)){ console.log(key,obj[key]) } }
3.日期dom
(1) Date.now() //获取当前时间毫秒数 (2)var d = new Date() dt.getTime() //获取当前时间毫秒数
4.Math函数
Math.random()经常使用于清除缓存(例:频繁访问一个连接会有缓存,连接后面加random,每次访问都会变,随时改变清除缓存)
相关问题:code
(1) 获取 2018-05-18 格式的日期: function date(dt){ if(!dt){ dt = new Date() //获取当前时间戳 } var year = dt.getFullYear() var month = dt.getMonth() + 1 var date = dt.getDate() if(month < 10){ month = '0' + month //强制类型转换 } if(date < 10){ date = '0' + date } return year + '-' + month + '-' + date } var d = new Date() var formatDate = date( d ) (2) 获取随机数,要求时长度一致的字符串格式: var random = Math.random() random = random + '0000000000' //后面加上10个0 (假如slice(0,4)也不会报错) random = random.slice(0,10) //slice至关于复制,复制出一个新数组,不改变原数组 (3)写一个能遍历对象和数组的通用forEach函数 function forEach(obj, fn ){ var key if (obj instanceof Array){ //判断是否是数组 obj.forEach(function(item, index){ fn(index ,item ) }) }else { for(key in obj){ if(obj.hasOwnProperty(key)){ fn(key,obj[key]) } } } }