Introduction
前端基础知识
前端html和css基础知识
从几道有意思的题理解堆栈内存、闭包作用域
面试必会之对象和数组的深浅拷贝
一道题解读面向对象
EventLoop,宏任务、微任务
有意思的双等号题目
Vue_React区别
跨域问题的解决方案和实现原理
前端必会的排序算法
前端必会的数组去重的四大实现方案
前端基础之数组扁平化
斐波那契数列
字节跳动前端经典算法题
前端基础题目
1、call和apply区别是什么,哪个性能更好一些?
2、编写一条正则,用来验证此规则:一个6~16位的字符串,必须同时包含有大小写字母和数字
3、实现一个$attr(name, value)遍历,属性名为name,值为value的的元素合集
4、英文字母汉字组成的字符串,用正则给英文单词前后加上空格
5、实现(5).add(3).minus(2)使其输出结果为6
6、箭头函数和普通函数的区别
7、字符串中字母大写转小写,小写转大写
8、实现字符串查找
9、验证输入的是否是一个正确的网址
10、原型链
11、图片懒加载
12、数组交集
13、旋转数组
14、函数科里化思想
15、手写new
16、数组合并
17、闭包
18、匿名函数
19、a==1&&a==2&&a==3
20、对象调用push方法
21、对象转数组
22、值类型&引用类型(变量类型)
23、typeof运算符(变量类型)和深拷贝
24、变量计算、类型转换
25、class和继承
26、原型和原型链
27、作用域和闭包
28、this
29、同步和异步
JS Web API
1、DOM操作(文档对象模型的集合)
2、BOM操作
3、事件
4、ajax
5、存储
6、开发环境
7、页面加载和渲染过程
8、性能优化
9、函数节流&防抖
10、安全
面试题
1、作用域和值类型引用类型的传递
2、封装函数进行字符串驼峰命名
3、冒泡排序
4、反转数组
5、数组去重
6、js综合面试题
7、nodejs事件轮询
8、从url输入
9、闭包
10、变量提升&上下文
11、宏任务和微任务
12、React和Vue
13、Redux状态管理机制
14、vue组件间通信的方式
15、vuex状态管理机制
16、Vue的MVVM的实现
17、重绘、重排(回流)
18、ES6的class
19、async、await使用与原理
20、ts在项目中的使用
21、ES6装饰器的使用
22、事件循环
23、浏览器缓存原理
24、h5离线存储manifest
25、移动端兼容问题
26、混合开发
27、一次完整的http请求过程
28、http缓存控制
29、Promise
30、React
31、性能优化
32、MVC、MVVM、MVP
33、函数防抖与节流
34、数组声明式系列方法的使用
35、算法基础
36、webpack
37、设计模式
Review
1、call和apply的区别是什么?哪一个性能更好一些?
2、实现(5).add(3).minus(2)使其输出结果为6
3、箭头函数与普通函数的区别是什么?构造函数可以使用new生成实例,那么箭头函数可以吗?为什么?
4、字母大小写取反,例如'AbC'变成'aBc'
5、字符串匹配算法
6、输出下面代码运行结果
7、判断输入的是正确的网址
8、阿里面试函数题
9、实现图片懒加载
10、正则
11、数组扁平化
12、面向对象new
13、数组合并
14、前端经典输出1-10问题
15、函数经典题
16、a=?使得a==1&&a==2&&a==3成立
17、经典题
18、经典函数题
19、求两个数组的交集
20、旋转数组
21、把公司1-12个月的销售额存在对象中
22、冒泡排序
23、插入排序
24、快速排序
Published with GitBook
2、编写一条正则,用来验证此规则:一个6~16位的字符串,必须同时包含有大小写字母和数字
2、编写一条正则,用来验证此规则:一个6~16位的字符串,必须同时包含有大小写字母和数字
正向预查:要匹配的字符串必须满足pattern这个条件
负向预查:要匹配的字符串必须不满足pattern这个条件
括号中的内容只是参与条件,并不参与真正的条件
let reg = /^(?!^[a-zA-Z]+$)(?!^[A-Z0-9]+$)(?!^[0-9a-z]+$)(?![0-9]+$)[a-zA-Z0-9]{6,16}$/
results matching "
"
No results matching "
"