字节前端一面

JS数据类型有哪些?

引用数据类型和基本数据类型的区别是什么?

如何判断一个对象是不是空对象?

代码输出:

const obj1 = {
    key: 'value1',
};

const obj2 = {
    key: 'value2',
};

function func1(obj1) {
    obj1.key = 'value11';
    return obj1;
}

function func2(obj2) {
    obj2 = {
        key: 'value22',
    };
    return obj2;
}

func1(obj1);
func2(obj2);

console.log(obj1, obj2);
console.log(obj2 === func2(obj2));

对闭包的理解?什么情况下会产生闭包?

代码输出:

function func() {
    let num = 0;
    return () => {
        num++;
        return num;
    }
}

const func1 = func();
const func2 = func();

console.log(func1());
console.log(func2());
console.log(func1());
console.log(func2());

对JS单线程的理解?缺点是什么?设计初衷是什么?

浏览器从输入url到页面渲染出来的过程?

DOM树的构建和JS代码的执行的先后顺序?

对webWorker的理解?使用限制有哪些?

对JS的事件循环的理解?

代码输出

async function async1() {
    console.log('async1 start');
    await async2();
    console.log('async1 end');
}

async function async2() {
    console.log('async2');
}

console.log('script start');

setTimeout(() => {
    console.log('setTimeout');
}, 0)

async1();

new Promise((resolve) => {
    console.log('promise1');
    resolve();
}).then(() => {
    console.log('promise2');
})

console.log('script end');

如果在async1()前面加上await会不会影响输出结果?

Promise和async/await有哪些相似性?

有了解过React框架的哪些原理吗?

React Fiber在哪个过程是可以中断的?

代码题:实现一个convert函数,将扁平化的结构转换成树状结构。

const list = [
    { key: 1, value: 'A', parentKey: 0 },
    { key: 2, value: 'B', parentKey: 0 },
    { key: 3, value: 'C', parentKey: 1 },
    { key: 4, value: 'D', parentKey: 1 },
    { key: 5, value: 'E', parentKey: 2 },
    { key: 6, value: 'F', parentKey: 3 },
    { key: 7, value: 'G', parentKey: 4 },
];

===>
    
const tree = [
    {
        key: 1,
        value: 'A',
        parentKey: 0,
        children: [
            {
                key: 3,
                value: 'C',
                parentKey: 1,
                children: [
                    { key: 6, value: 'F', parentKey: 3 }
                ]
            },
            {
                key: 4,
                value: 'D',
                parentKey: 1,
                children: [
                    { key: 7, value: 'G', parentKey: 4 }
                ]
            }
        ]
    },
    {
        key: 2,
        value: 'B',
        parentKey: 0,
        children: [
            {
                key: 5,
                value: 'E',
                parentKey: 2
            }
        ]
    }
];

代码题:实现输出下一个质数

getPrime(); // 2
getPrime(); // 3
getPrime(); // 5
// ...

代码题:给一个有序数组和一个数字,要求返回该数字在有序数组中出现的起始位置和结束位置。

const arr = [1, 1, 2, 2, 2, 3, 4];
const n = 2;
getPosition(arr, n); // 输出: [2, 4]
全部评论
什么部门兄弟
1 回复 分享
发布于 2023-08-30 13:03 河北
是实习嘛,为啥这么简单
点赞 回复 分享
发布于 2023-08-31 20:05 甘肃

相关推荐

03-15 14:55
已编辑
门头沟学院 golang
bg:双非学院本 ACM银 go选手timeline:3.1号开始暑期投递3.7号第二家公司离职顽岩科技 ai服务中台方向 笔试➕两轮面试,二面挂(钱真的好多😭)厦门纳克希科技 搞AI的,一面OC猎豹移动 搞AIGC方向 一面OC北京七牛云 搞AI接口方向 一面OC上海古德猫宁 搞AIGC方向 二面OC上海简文 面试撞了直接拒深圳图灵 搞AIGC方向一面后无消息懒得问了,面试官当场反馈不错其他小厂没记,通过率80%,小厂杀手😂北京字节 具体业务不方便透露也是AIGC后端方向2.28约面 (不知道怎么捞的我,我也没在别的地方投过字节简历哇)3.6一面 一小时 半小时拷打简历(主要是AIGC部分)剩余半小时两个看代码猜结果(经典go问题)➕合并二叉树(秒a,但是造case造了10分钟哈哈)一天后约二面3.12 二面,让我挑简历上两个亮点说,主要说的docker容器生命周期管理和raft协议使用二分法优化新任leader上任后与follower同步时间。跟面试官有共鸣,面试官还问我docker底层cpu隔离原理和是否知道虚拟显存。之后一道easy算法,(o1空间解决 给定字符串含有{和}是否合法)秒a,之后进阶版如何用10台机加快构建,想五分钟后a出来。面试官以为45分钟面试时间,留了18分钟让我跟他随便聊,后面考了linux top和free的部分数据说什么意思(专业对口了只能说,但是当时没答很好)。因为当时手里有7牛云offer,跟面试官说能否快点面试,马上另外一家时间到了。10分钟后约hr面3.13,上午hr面,下午走完流程offer到手3.14腾讯技术运营约面,想直接拒😂感受: 因为有AIGC经验所以特别受AI初创公司青睐,AIGC后端感觉竞争很小(指今年),全是简历拷打,基本没有人问我八股(八股吟唱被打断.jpeg),学的东西比较广的同时也能纵向深挖学习,也运气比较好了哈哈可能出于性格原因,没有走主流Java路线,也没有去主动跟着课写项目,项目都是自己研究和写的哈哈
烤点老白薯:你根本不是典型学院本的那种人,贵了你这能力
查看7道真题和解析
点赞 评论 收藏
分享
评论
6
28
分享

创作者周榜

更多
牛客网
牛客企业服务