1,项目:和同学一起做。
2,挖掘简历里的点。
图片懒加载:背景颜色作为默认,计算是否进入视区。
利用前端骨架屏:占位
登陆模块:基于正则采用前端格式校验
数字,字母6-16: let reg = /[a-zA-Z0-9]{6-16}/; 学习过,没掌握
减轻服务器压力基于session实现登录态校验和权限校验:和自己无关,同学做的。
使用cookie实现记录部分非敏感用户信息:
阐释cookie知识:(同域携带,跨域时怎么传递?ok. header res , req双向区别ok, 浏览器版本号?服务器怎么获取?不知道,这里候选人先前认为是通过cookie来传递浏览器版本号)
小图片base64:1KB 改成base64后,体积无变化?fail, 用过,但没思考过,其实是变大了。
分离js读写操作:修改+读取dom不要交叉写
3,typeof null: object
typeof typeof null: string
4,<style> .classA { color:blue; } .classB { color:red;} </style> <p class="classB classA">hello</p>
元素p内的文字最终什么颜色: ok
5,代码执行分析:2 -》 unfined,函数作用域,变量提升: okvar a = 1; function fn() { console.log(a);
var a = 2; } fn();
6, 实现功能函数'get-element-by-id'转驼峰'getElementById'。 如下:调试了很久。实现比较一般
function trun(str){ let index, str1 = str.split(''); while((index = str1.indexOf('-'))!==-1){ //console.log(index); let Bigletter = str1[index+1].toUpperCase(); //console.log(Bigletter); str1.splice(index,1,Bigletter); } return str1.join(''); }
二面:
对象的.和[]的区别。
- 点方法后面跟的必须是一个指定的属性名称,而中括号方法里面可以是变量。例如
var haha = "name"; console.log(obj.haha); // undefined console.log(obj[haha]); // cedric
- 中括号方法里面的属性名可以是数字,而点方法后面的属性名不可以是数字
- 当动态为对象添加属性时,必须使用 中括号 [], 不可以用点方法
请实现一个js版本的sleep函数,功能为暂停执行。 如: console.log(1); sleep(1); console.log(2); 输出: 1 (1秒钟后) 2
实现一个函数 findLastIndex(), 返回指定数在“有序”数组中最后一次出现位置的索引
如findLastIndex([1,2,3,3,3,4,5], 3), 返回4
实现一个EventEmitter类,支持事件的on,off,emit,once,setMaxListeners
面试官很nice帮助你分析问题,分析不足。
全部评论
(2) 回帖