- 獲取2017-11-20格式的日期
- 獲取隨機數,要求是長度一致的字符串格式
- 寫一個能遍歷對象和數組的通用forEach函數
常用API
日期API
Date.now() //獲取當前時間毫秒數(從1970年開始到現在的毫秒數)
var dt = new Date()
dt.getTime() //獲取毫秒數
dt.getFullYear() //年
dt.getMonth() //月(0-11)
dt.getDate() //日(0-31)
dt.getHours() //小時(0-23)
dt.getMinutes() //分鐘(0-59)
dt.getSeconds() //秒(0-59)
MathAPI
Math.random() //獲取隨機數
數組API
forEach //遍歷所有元素
every //判斷所有元素是否都符合條件
some //判斷是否有至少一個元素符合條件
sort //排序
map //對元素重新組裝,生成新數組
filter //過濾符合條件的元素
//foreach
var arr = [1,2,3]
arr.forEach(function(item,index){
//遍歷數組的所有元素
console.log(index,item)
})
//every
var arr = [1,2,3]
var result = arr.every(function(item,index){
//判斷所有的數組元素,都滿足一個條件
if(item < 4){
return true
}
})
console.log(result)
//some
var arr = [1,2,3]
var result = arr.some(function(item,index){
//判斷所有的數組元素,只要有一個滿足即可
if(item < 2){
return true
}
})
console.log(result)
//sort
var arr = [1,4,2,3,5]
var arr2 = arr.sort(function(a,b){
//從小到大排序
return a - b
//從大到小排序
return b - a
})
console.log(arr2)
//map
var arr = [1,2,3,4]
var arr2 = arr.map(function(item,index){
//將元素重新組裝,并返回
return '<b>' + item + '</b>'
})
console.log(arr2)
//filter
var arr = [1,2,3,4]
var arr2 = arr.filter(function(item,index){
//通過某一個條件過濾數組
if(item >= 2){
return true
}
})
console.log(arr2)
對象API
var obj = {
x:100,
y:200,
z:300
}
var key
for(key in obj){
//注意這里的 hasOwnProperty,是否是key本身的而不是原型的
if(obj.hasOwnProperty(key)){
console.log(key,obj[key])
}
}
三個Demo
獲取2017-06-10格式的日期
function formatDate(d){
if(!d){
var d = new Date()
}
var year = d.getFullYear()
var month = d.getMonth() + 1
var date = d.getDate()
if(month < 10){
month = '0' + month
}
if(date < 10){
date = '0' + date
}
return year + '-' + month + '-' + date
}
var d = new Date()
console.log(formatDate(d))
獲取隨機數,要求長度一致的字符串格式
var random = Math.random()
random = random + '0000000000' //加10個0
random = random.slice(0,10)
console.log(random)
寫一個能遍歷對象和數組的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,obj[key])
}
}
}
var arr = [1,2,3]
//參數順序換了,為了和對象保持一致
forEach(arr,function(index,item){
console.log(index,item)
})
var obj = {x:100,y:200}
forEach(obj,function(index,item){
console.log(index,item)
})