JS 面试题考查点

88 阅读1分钟

let/var,setTimeout在for中的执行顺序

// var
for(var i = 0;i< 3;i++){
   setTimeout(function (){
      console.log(i)
   },1000)
}
输出结果:2 2 2

// let 
for(let i = 0;i< 3;i++){
   setTimeout(function (){
      console.log(i)
   },1000)
}
输出结果:0 1 2

全局变量

function demo(){
   let x = b = 0;// let x ;b = 0
   return x
}
demo()
console.log(typeof x)  number
console.log(typeof b)  number

数组类型转换

var a = {}
var b = {key:'b'}
var c = [3,2,3]
a[b] = 123
conosle.log(a)      // [object,object]
console.log(a[b])  // 123
cosole.log(a[c]) // undefined