20170814
2017-08-15 本文已影响0人
入秋未凉的海
前端使用异步的场景
- 定时任务:setTimeout, setInverval
- 网络请求:ajax请求,动态<img>加载
- 事件绑定
var img = document.createElement('img')
img.onload = function () {
console.log('loaded')
}
img.src = '~'
console.log('end')
数组API
- forEach 遍历所有元素
- every 判断所有元素是否符合条件
- some 判断是否有至少一个元素符合条件
- sort排序
- map对数组重新组装,生成新数组
- filter过滤符合条件的元素
var arr = [1,2,3]
var result = arr.some(function(item, index){
//用来判断所有的数组元素,只要有一个满足条件即可
if(item < 2){
return true;
}
})
var arr = [1,2,3]
var result = arr.every(function(item, index){
//用来判断所有的数组元素,都满足一个条件
if(item < 2){
return true;
}
})
var arr = [1, 2, 3]
var arr2 = arr.filter(function(item, index){
//通过某一条件过滤数组
if(item >=2){
return true
}
})
获取格式日期
function formatDate(dt){
if(!dt){
dt = new Date();
}
var year = dt.getFullYear()
var month = dt.getMonth() + 1
var date = dt.getDate()
if(mouth < 10){
mouth = '0' + mouth
}
if(date < 10){
date = '0' + date
}
return year + '-' + month + '-' +date
}
var dt = new Date();
var formatDate = formatDate(dt)
获取随机数,要求是长度一直的字符串格式
var random = Math.random()
var random += '0000000000'
var random = random.slice(0,10)
能遍历对象和数组的forEach函数
function forEach(obj, fn){
var key
if(obj instanceof Array{
obj.forEach(function(item, index){
fn(index, item)
})
} else {
for(key in obj){
fn(key, onj[key])
}
}
}
var arr = [1, 2, 3]
forEach(arr, function(index, item){
console.log(index, item);
})
var obj = {x:100, y:200}
forEach(obj, function(key, value){
console.log(key, value);
})