上海公司面试题
title: 上海公司面试题 date: 2019-11-16 16:28:19
tags: 面试题
云印(以 vue 为主)
1.页面初始化一般放在哪个生命周期里,为什么?
2.vue 组件之间如何传递参数
3.同步组件和异步组件之间的区别,优缺点
4.vue-router 实现原理
5.微信小程序的跳转方式有哪几种
- ajax 的同步和异步有什么区别
7.css 那些属性是默认继承的?
canvas 和 style 怎么进行绑定?
v-for 中 in 和 of 的区别
watch 如何使用
如何存储 localstorage
router 如何传值,如何取值
vuex 如何存储值
分页组件的实现
如何监听物理返回键
报关(以 http 为主)
- http 请求原理
- http 请求的几种方式,有什么区别
- 如何进行登录验证,token 失效如何处理
- 如何调换数组中两个元素的位置.例如:[1,2,3,4,5]中调换 3 和 4 的位置,变成[1,2,4,3,5].
- 向后端发送文件的格式?
外包公司 1
- js 中如何检测一个变量是 String 类型.请写出函数具体实现
- 写出下面函数输出什么(tips:闭包)
1 | var count = 10; |
输出
1 | //考察闭包 |
- 如何阻止事件冒泡和默认事件
- 下面的问题打印什么
1 | var str = "我是MT"; |
输出
1 | //考察变量声明和作用域 |
- 什么是盒子模型
- sessionStorage,localStorage 和 cookie 的区别
- px 和 em 的区别
- 列举不同的清除浮动的技巧
display: none
和visibility: hidden
的区别- 组件中
<style scoped>
的scoped
的作用. - v-show 和 v-if 的共同点和区别
- vue 注册组件使用什么关键字
- vue 如何实现父子组件通信
- vue 的双向数据绑定原理是什么?
外包公司 2
- 使用 js 将数组:
[{ name: "king", age: 18}, {name: "bob", age: 22}]
变成[18,22],并且筛选出大于 20 的值. - 使用 js 获取页面一个 id 为 myP 的
<p>
标签,并为其增加点击事件,并说明一下 addEventLister 方法的第三个可选参数的冒泡和捕获. - 控制台运行一下代码:
1 | for (var i = 0; i < 3; i++) { |
输出什么
1 | 3 //先执行for循环,i=1,有异步代码,封存数据,console.log(i). |
大钱
- 写一个原生 ajax 请求
- 写几个常用的数组,字符串,对象的方法
npm install --save
和npm install --save --dev
的区别- IE 与火狐的事件机制有什么区别?如何阻止冒泡?
- 什么是闭包? 闭包的用途
- css3 动画最后一帧如何恢复到原样?
- sessionStorage,localStorage 和 cookie 的区别?分别在什么时候用?
- HTML5 新特性?移除那些?如何处理 HTML5 新标签的浏览器兼容问题?做过的项目中,那些 CSS 样式需要单独写兼容样式?
- ES6 运算符…是用来做什么的?用 ES6 语法遍历一个数组.
- px,em,rem 的区别
- prototype 是什么?什么时候用
- js 添加,移除,替换,删除,创建,查找节点的方法是什么
- 如何优化网站性能(js)
- 编写一个方法,去掉以下数组的重复元素
- vue 如何监听一个对象的变化,写个例子
- setTimeout,promise,async/await 的区别
- intercepter 用在什么地方
- 路由拦截在什么地方
- 切换用户如何处理
- 用户不是提交验证进来而是输入 url 进来如何处理
- 组件里 name 的作用
外包公司 3
- js 有哪些基本数据类型
- var let const 的区别
- 数字计算: 在 js 中,0.1+0.2 的结果是?
- 下面代码有什么问题?(tips:闭包)
1 | <ul> |
无论点击哪个都会输出 3
解决方法:
1.将 var 换成 let
- for 循环改造
1 | for (var i = 0; i < lis.length; i++) { |
- 请写出下面输出结果,
1 | let obj = {},arr = []; |
输出
1 | { |
- promise 有几种状态,什么时候会进入 catch?
- 在 8*8 的国际象棋摆放八个皇后,使其不同相互攻击,即任意两个皇后不能处在同一行,同一列,同一对角线.总共有多少种摆法.
- git 命令有哪些?
外包公司 4 才匠
- 下面代码的输出是什么?
1 | const shape = { |
输出
1 | 20; |
1 | let c = { greeting: "hey" }; |
输出
1 | hello; //考察引用类型的指针,或者说堆内存 |
1 | class Chameleon { |
输出
1 | //考察class中static的方法 |
1 | function Person(firstName, lastName) { |
输出
1 | //考察ES6中的class |
1 | function checkAge(data) { |
输出
1 | //考察引用类型 |