其实前端开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。
这里再分享一个复习的路线:(以下体系的复习资料是我从各路大佬收集整理好的)
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
《前端开发四大模块核心知识笔记》
最后,说个题外话,我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在IT学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。
forin
-
for in 性能很差:迭代当前对象中所有可枚举的属性[私有属性大部分是可枚举的,公有属性{出现在所属类的原型上的}也有部分是可枚举的],查找机制上一定会搞到原型链上去,一层一层网上查
-
forin的问题
-
问题1:遍历顺序以数字优先
-
问题2:无法遍历Synmbol属性
-
问题3:可以遍历到公有可枚举的 (原型上的东西)
let arr = new Array(9999999).fill(0)
console.log(‘forEach==1’, (new Date()).getTime())
arr.forEach(function (item) {})
console.log(‘forEach==2’, (new Date()).getTime())
console.log(‘for-in==1’, (new Date()).getTime())
for (let key in arr) {}
console.log(‘for-in==2’, (new Date()).getTime())
console.log(‘-----------------------’);
Object.prototype.fn = function fn() {}
let obj = {
name: ‘张三’,
age: 12,
0: 200,
1: 300
}
for (let key in obj) {
if (!obj.hasOwnProperty(key)) break; // 阻止遍历原型上的东西,提高性能
console.log(key, obj.hasOwnProperty(key));
}
console.log(‘-----------------------’);
let keys = Object.keys(obj)
let sym = Object.getOwnPropertySymbols(obj).length
if (sym > 0) {
最后
你要问前端开发难不难,我就得说计算机领域里常说的一句话,这句话就是『难的不会,会的不难』,对于不熟悉某领域技术的人来说,因为不了解所以产生神秘感,神秘感就会让人感觉很难,也就是『难的不会』;当学会这项技术之后,知道什么什么技术能做到什么做不到,只是做起来花多少时间的问题而已,没啥难的,所以就是『会的不难』。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
我特地针对初学者整理一套前端学习资料
)**
我特地针对初学者整理一套前端学习资料
[外链图片转存中…(img-UVPAy6Ph-1715572261748)]
[外链图片转存中…(img-T2wVVGiR-1715572261749)]