JS基礎知識(五)陣列日期
阿新 • • 發佈:2018-12-16
陣列日期
問題:
- 獲取2017-06-10格式的日期
- 獲得隨機數,要求是長度一致的字串格式
- 寫一個能遍歷物件和陣列的通用forEach函式
知識:
1.日期:
通過new Date().now()得到:1970開始到現在的毫秒數
//Date console.log(Date.now()) //當前時間毫秒數、 var dt = new Date() console.log(dt) console.log(dt.getTime()) console.log(dt.getFullYear()) console.log(dt.getMonth()) //month從0-11 要記得加1 console.log(dt.getDate()) console.log(dt.getHours()) console.log(dt.getMinutes()) console.log(dt.getSeconds())
2.Math:
獲得隨機數 Math.random(),可以通過這個random來清理快取。
3.陣列API
(1)forEach 遍歷所有元素
//forEach
var arr = [1, 5, 2, 4,7]
arr.forEach(function(item, index) {
console.log(index, item)
})
先item,再index注意順序
(2)every 判斷所有元素是否都複合條件
//every var result = arr.every(function(item, index) { if (item < 5) { return true } }) console.log(result)
(3)some 判斷是否至少有一個元素符合條件
//some
var result2 = arr.some(function(item, index) {
if (item < 5) {
return true
}
})
console.log(result2)
(4)Sort 排序
//sort
var arr2 = arr.sort(function(a, b) {
return a - b // a-b 從小到大
})
console.log(arr2)
(5)map 對元素重新組裝,生成新陣列
//map var arr3 = arr.map(function(item, index) { return '<b>'+ item + '<b>' }) console.log(arr3)
(6)filter 過濾符合條件的元素
//filter
var arr4 = arr.filter(function(item, index) {
if (item > 2) {
return true
}
})
console.log(arr4)
4.物件api
var obj = {
x: 100,
y: 200,
z: 300
}
var key
for(key in obj) {
console.log(key , obj[key])
}
解答:
- 獲取2017-06-10格式的日期
var ds = new Date() var year = ds.getFullYear() var month =ds.getMonth()+1 var day = ds.getDate() function formateDate(dt) { if (!dt) { dt = new Date() } var year = dt.getFullYear() var month =dt.getMonth()+1 var day = dt.getDate() if (month < 10) { month = '0'+month } if (day < 10) { day = '0' + date } return year + '-' + month + '-' +day } console.log(formateDate(ds))
- 獲得隨機數,要求是長度一致的字串格式
//長度一致先加00再slice var random = Math.random() random = random + '000000000' random = random.slice(0,10) console.log(random)
- 寫一個能遍歷物件和陣列的通用forEach函式
function forEach(obj) { var key if (obj instanceof Array) { obj.forEach(function(item, index){ console.log(index, item) }) } else { for(key in obj) { console.log(key, obj[key]) } } } forEach(obj); forEach(arr2);