字节基础架构前端一面面经
代码和输出
看输出,这道题直接整哭
var b = 'window';
function c() {
console.log(b)
console.log(this.b)
}
var obj = {
b: '1-1',
c:function(){
console.log(b)
console.log(this.b)
return {
b: '1-2',
c: function() {
console.log(b)
console.log(this.b)
}
}
},
}
c()
obj = obj.c()
obj.c = c
obj.c()写代码
输入m * n的二维矩阵,要求从(0,0)开始螺旋向内完成打印输出。 具体打印方法: ➡️先从左向右打印第一行; 2. ⤵️再从上向下打印最后一列; 3. ⬅️然后从右向左打印最后一行; 4. ⤴️最后从下向上打印第一列。
如此往复,完成所有元素打印。
例如:
input = [ [ 1, 2, 3, 4, 5],
[14, 15, 16, 17, 6],
[13, 20, 19, 18, 7],
[12, 11, 10, 9, 8],
]
output = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20看输出
async function async1(){
console.log('async1 start')
await async2()
console.log('async1 end')
}
async function async2(){
console.log('async2')
}
console.log('script start')
setTimeout(function(){
console.log('setTimeout')
},0)
async1();
new Promise(function(resolve){
console.log('promise1')
resolve();
}).then(function(){
console.log('promise2')
})
console.log('script end')
问题
- css不定宽高居中
- flex,其中一个不居中,怎么弄
- flex属性包含哪三个,第三个想不起来了
- position的sticky在什么时候会用到
- js中if大括号包裹住的是否是块作用域
- webpack的配置项
- webpack的loader和plugin分别都是干啥的
- js作用域和this指向
- vue组件传值
- vue bus的发布订阅和取消订阅分别都是怎么实现的
- 对发布订阅模式的理解
查看13道真题和解析