猫眼电影前端实习面经
猫眼电影前端实习面试-----1h15min
新鲜出炉,凭记忆整理,可能有遗漏,想起来在更新
第一次面试贼紧张,还好面试官是一个小姐姐,声音很好听~~
- 自我介绍
- 帮老师做的项目上线了吗?怎么部署?
- 你参加的蓝桥杯的作品是什么?(我说那是个算法比赛)
- 你练过算法?
- 看你成绩不错,你是怎么学习前端的呢?
- 代码题1
请用原生js将如下数据结构转化为对应table,渲染在body中 数据结构为:
let tableData = { thead: ['头部1','头部2'], tbody: [ [10,10], [9,10], [8,10], [7,10] ] } 期望,渲染出如下结构
然后实现点击某个头部,根据这一列的数值进行降序排序 - 代码题2
let a = {x:1} let b = a; a.y = 2; console.log(a); console.log(b); b = {z:3}; console.log(a); console.log(b);
- 代码题3
let a = {x:1} let b = {y:2, z: 3} let c = {x:1, y: 2, z:3}
- 代码题4
let deck = { suits: ["hearts", "spades", "clubs", "diamonds"], cards: Array(52), createCardPicker: function() { return function() { let pickedCard = Math.floor(Math.random() * 52); let pickedSuit = Math.floor(pickedCard / 13); return {suit: this.suits[pickedSuit], card: pickedCard % 13}; } } } let cardPicker = deck.createCardPicker(); let pickedCard = cardPicker(); alert("card: " + pickedCard.card + " of " + pickedCard.suit);
说说这个代码会弹出什么?说说这个代码实现了什么功能?
- 状态码502 500
- tcp和udp的区别,他们各自的应用
- http和https
- 知道的请求头?(说到了缓存)
- 协商缓存过程
- 强缓存过程
- 对称加密和非对称加密
- dns查询过程
- less与css的区别,优点
- 前端模块化规范,commonjs和ES6的区别?
- es6导入导出规则
- webpack功能
- 知道哪些 git 常用的命令?
- 什么是深克隆,什么是浅克隆,他们的区别
- 实现一个浅克隆?(说到 assign)
- Object.assign()具体用法
- 箭头函数
- 1.23——>1.2;1.25——>1.3 怎么实现这种四舍五入的
- 写一个类的继承
- apply和call的区别
- 遇到过跨域吗?知道哪几种跨域方式?
- 浏览器的同源策略?怎么判断是不是一个域?www.baidu 和 a.baidu 是不是同一个域?
- 基本数据类型和引用数据类型的区别
- css盒子模型
- display:none,visibility:hidden的区别
贵公司使用的什么技术栈?(node+react)
对应届生更看重哪方面的能力?(基础知识,比如红宝书,还有逻辑思维能力和沟通表达能力)