同步/异步
回调函数=> 回调地狱 setInterval/setTimeout =>Promise=>Generator =>asyn/await
GitHub ssh key秘钥的获取
$ ssh-keygen-t rsa-C "[email protected]"
$ ssh-keygen-t rsa-C "[email protected]"
Array.isArray()
isNaN()
//bad
const arr = [];
const key = '';
for (key in obj) {
arr.push(obj[key]);
}
//good
const arr = [];
const key = '';
for (key in obj) {
if (obj.hasOwnProperty(key)) {
arr.push(obj[key]);
}
}
//在组件中获取真实的DOM
class MyComponent extends React.Component
constructor(props) {
super(props);
this.inputRef = React.createRef();
}
render() {
return ;
}
componentDidMount() {
this.inputRef.current.focus();
}
}
undefined === void 0 //true
//跨域问题
出现原因 同源策略 域名 协议 端口
JSONP 引入不同的js脚本 通过回调函数获取可以运行的javaScript语句 JavaScript只能用Get发送请求 document.domain 方法 window.name 属性
//http https 协议 Http协议是以明文方式发送信息的,超文本传输协议 Https 是以安全为目标的Http通道,是Http的安全版,Https的安全基础是SSL, http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443
//实例 构造函数 实例的__proto__属性(原型)等于其构造函数的prototype属性
//最小容器的scss实现
//面试题
HTML5新特性(新增的标签, API等),如localstorage的用法以及与cookie的区别,如何理解web语义化
CSS3新特性,如动画等
CSS特性,如position的用法,如何实现居中,bootstrap源代码的理解,盒模型(W3C和IE),flex的使用
前端兼容性处理(CSS hack技术)
JS基础,如this用法,new关键字的过程,call与apply的区别,闭包,原型以及JS如何实现继承
前端基础,浏览器缓存,跨域,从输入url到渲染的整个过程,事件(W3C和IE),TCP三次握手过程,如何实现懒加载(跟预加载的区别)
之前有看过你做的一个移动页简历,请问如何实现?我主要是使用REM+Media Query,根据不同尺寸的设备进行不同的font-size设置。然后问我REM和EM的区别,如果父元素的font-size也是采用em表示,那么子元素的font-size怎么计算等。
有没有遇到过margin重叠的现象,如何解决?BFC
常见的清除浮动的方法有哪些?bootstrap是怎么做的?bootstrap是怎么实现grid系统的?
怎么理解JS模块化?有没有使用过webpack?
//csss3新特性:盒子模型(布局方式,),渐变色,颜色透明,nth-child(1)
//浏览器内核如下
IE内核为:trident;
Chrome内核为:blink(基于webkit,谷歌与Opera software共同开发);
Firefox内核为:gecko;
Safari内核为:webkit内核;
Opera内核为:blink (跟Chrome一样) 之前为presto;
//ES6新特性
const let 块级作用域 {} 定义 剪头函数=> //${expression} 模板字面量 //let {a,b} = this.props 解构 //对象简写法 //数组的循环 map for..of for forEach for in continue //展开运算符 ... 三个点
call apply的区别 剪头函数默认参数
//reduce 数组之间的求和求乘 累积值 原数组 索引 //filter 数组的筛选 创建一个新的数组 不会改变原数组
//webpack 打包器 严格的单向数据流是 Redux 架构的设计核心。
//基础知识(HTML、CSS、JS)、高级部分(源码、优化等)、积极性(开源项目、博客积累等)、视野(新技术的了解和学习)