前言
根据慕课网的《快速搞定前端技术一面 匹配大厂面试要求》课程所整理的题目,陆续更新
常考面试题
场景题
先直接看一下下面这些基础面试场景题,你都会写吗?场景题的答案请拖动下方滚动条,然后查看注释参考对比自己的答案哦
①闭包场景题一
function print(fn) {
const a = 200
fn()
}
// 函数作为参数被传递
const a = 100
function fn() {
console.log(a) // 在定义的地方往上查找,找到外面全局定义的 a 变量,所以是打印 100
}
print(fn)
// 100
②闭包场景题二
function create() {
const a = 100
return function () {
console.log(a)
}
}
// 函数作为返回值
const fn = create()
const a = 200
fn()
// 打印 100
③this、call、bind
function fn1() {
console.log(this)
}
fn1() // window
fn1.call( {
x:100 } ) // call直接就改变指向执行
// {x:100}
const fn2 = fn1.bind( {
x:200 } ) // 返回一个新的函数执行,所以需要赋值
fn2()
// {x:200}
④this无箭头
const zhangsan = {
name: '张三',
sayHi(