1. 数字数组排序
- JavaScript中的sort()默认是字母排序的,例如[1,2,10,5].sort() ,会输出[1,10,2,5] 。
解决这个问题也有个很简单的办法,使用[1,2,10,5].sort( (a, b) => { return a - b} )
2. Date()
- new Date() 返回当前时间
- new Date(x) 返回1970年1月1日 + x毫秒时间。
- new Date(1,1,1) 返回1971年2月1日,年份为1970+1年,月份是从0开始,天数是从1开始。
- new Date(2010,1,1) 返回2010年1月1日。
3. 如何判断变量是否是数组
- typeof [] = 'object' 证明数组并不是原始类型
- 如何判断是否是数组:Array.isArray(arr)
4. 闭包
const Greeters = []
for (var i = 0 ; i < 10 ; i++) {
Greeters.push(function () { return console.log(i) })
}
Greeters[0]() // 10
Greeters[1]() // 10
Greeters[2]() // 10
如何将0,1,2,3...存入?
- 解决办法一: 使用let 替代 var , var 作用域是最近的函数块,let 是最近的封闭块。如果都在块外,则为全局变量。
- 解决办法二:使用bind
const Greeters = []
for (var i = 0 ; i < 10 ; i++) {
Greeters.push(console.log.bind(null, i))
}
Greeters[0]()
Greeters[1]()
Greeters[2]()