字节国际化电商前端暑期实习(已寄)

一面

  • 问了实习的时间,做的什么项目。
  • 代码题:合并两个数组
// 将['A1', 'A2', 'B1', 'B2'] 和 ['A', 'B']合并成 ['A1', 'A2', 'A', 'B1', 'B2', 'B']
  • 代码题:正则匹配替换字符串模板
  • 事件循环输出
console.log(1)
setTimeout(function () {
    console.log(2)
    Promise.resolve(100).then(function () {
        console.log('promise')
    })
})
let promise = new Promise((resolve, reject) => {
    console.log(7)
    resolve(100)
}).then(function (data) {
    console.log(data)
})
setTimeout(function () {
    console.log(3)
})
console.log(5)
  • Vue中key的作用,如果不写会报错吗?
  • 冒泡排序,优化一下。

二面

  • 针对简历上的项目问了一下,说一下项目的亮点和难点。
  • 项目里面为什么选择使用gulp,了解过gulp的原理吗?
  • 项目的构建和打包的流程。
  • 引入Vitest进行单元测试的目的,主要是测试组件哪方面的功能,具体怎么测试。
  • 业务组件和基础组件的区别是什么?你这个项目里面封装了哪些业务组件?(到这里其实差不多已经是寄了,因为越说不会的地方越被抓着问,说到底还是自己太菜,老实回去搬砖了)
  • 两道代码题幽默一下:
function foo() {
    console.log(this.a)
}
var a = 1
foo()

let obj = {
    a: 2,
    foo
}
obj.foo()

const c = new foo()
function bar() {
    return () => {
        return () => {
            console.log(this.a)
        }
    }
}
console.log(bar()()())
  • 数组结构转树,递归实现。

#前端暑期实习##字节暑期实习前端#
全部评论
大佬合并['A1', 'A2', 'A', 'B1', 'B2', 'B']是按照什么样的规则排序的啊,没懂啊
点赞
送花
回复
分享
发布于 03-20 15:05 新加坡
大佬,bar()()()那个的执行结果运行起来为什么是三个undefined啊
点赞
送花
回复
分享
发布于 03-20 18:05 新加坡
滴滴
校招火热招聘中
官网直投
setTimeout(function () { console.log(2) Promise.resolve(100).then(function () { console.log('promise') }) }) setTimeout(function () { console.log(3) }) 大佬 我想问一下 为啥 输出 是 2 promise 3 我理解 是 先将任务都放入 任务对列中 然后先执行 第一个 settimeout 输出 2 然后 把promise 放入 微任务队列中 然后接着执行 第二个 settimeout 最后执行 promise
点赞
送花
回复
分享
发布于 03-20 20:00 湖南

相关推荐

4 16 评论
分享
牛客网
牛客企业服务