为什么 call 比 apply 快?
这是一个非常有意思的问题。 作者会在参数为3个(包含3)以内时,优先使用 call 方法进行事件的处理。而当参数过多(多余3个)时,才考虑使用 apply 方法。 这个的原因就是 call 比 apply 快。 网上有很多例子全方位的证明了 call 比 apply 快。大家可…
25 个最基本的 JavaScript 面试问题及答案
一些基本的面试题,可以收藏
你真的了解js中的作用域吗?
域,在中文里面表示的是一个范围。
所以从字面理解作用域表示的应该是可以作用的范围,这样去理解很接近作用域的实际作用了。但是还是不太准确。
作用域本质其实是一套规则,目的是为了确定在哪里以及怎么样去查找变量(标识符)。
为了弄…
IT言职:面试流程 ∞ 非技术面试经典问题
◎ 同一个人的简历并非只有一个样式,而同一个样式的简历并不是在任何一次投递都能得到青睐。
◎ 同一个面试问题并非只有一个答案,而同一个答案并不是在任何面试场合都有效。
◎ IT言职:技术简历撰写 ∞ 择选简历模块释义 -> 微众
翻译连载 | 第 9 章:递归(上)-《JavaScript轻量级函数式编程》 |《你不知道的JS》姊妹篇
在下一页,我们将进入到递归的论题。 我们来谈谈递归吧。在我们入坑之前,请查阅上一页的正式定义。 大部分的开发人员都承认递归是一门非常强大的编程技术,但他们并不喜欢去使用它。在这个意义上,我把它放在与正则表达式相同的类别中。递归技术强大但又令人困惑,因此被视为 不值得我们投入努力…
2017秋招前端工程师百度阿里网易腾讯(全offer)面经|掘金技术征文
阿里被调岗到阿里音乐,已收到意向,base杭州,这个比较运气。。 补完了百度三面的所有面经,正式结束秋招吧。 总结一下,现在互联网公司对于前端的要求提高了很多,已经不满足于招聘一个只会写页面的前端,由于一些MV*框架在前端大行其道,并且很多后端的业务逻辑也在逐步往前端迁移,所以…
最终JavaScript手册知识拾遗
根据Stack Overflow调查,JavaScript是最受欢迎的编程语言,自2014年以来一直在使用JavaScript。难怪超过三分之一的开发人员工作需要一些JavaScript知识。所以,如果你打算在不久的将来作为开发者工作,你应该熟悉这种非常流行的语言。 这篇文章的…
前端每周清单半年盘点之 JavaScript 篇
前端每周清单专注前端领域内容,以对外文资料的搜集为主,帮助开发者了解一周前端热点;分为新闻热点、开发教程、工程实践、深度阅读、开源项目、巅峰人生等栏目。欢迎关注【前端之巅】微信公众号(ID:frontshow),及时获取前端每周清单;本文则是对于半年来发布的前端每周清单中的 Ja…
前端性能优化之加载技术
在这个前端用户体验越来越重要的时代,你的页面稍微有点卡顿,都难以挽留用户。而作为一名有追求的前端,势必要力所能及地优化我们前端页面的性能。今天,就来谈一谈那些前端性能优化的加载技术,利用这些技术可以很好地提高网站的响应速度和用户体验。 页面渲染 在理解真正的优化技术之前,我们需要…
前端最佳实践(一)——DOM操作
本文是博主最近处理一些网站卡顿问题的学习记录。 在讲DOM操作的最佳性能实践之前,先介绍下浏览器的基本渲染原理。浏览器渲染展示网页的主流程大致可以用下图表示: 需要着重指出的是,这是一个渐进的过程。为达到更好的用户体验,浏览器会力求尽快将内容显示在屏幕上。它不必等到整个 HTM…
前端开发者指南(2017)
作者:科迪·林黎(Cody Lindley),由「前端大师(Frontend Masters)」倾情赞助。 这是一本可供任何人使用的指南,用于学习前端开发实践。该指南大体上勾勒出了前端工程的轮廓,同时也讨论了前端工程的实践:2017 年,如何学习前端工程,用什么工具来实践? 笔…
也谈Javascript变量、作用域、变量提升
Javascript 作为一种动态语言,其语法特别是变量具有更多的灵活性。对于js的掌握程度不仅仅是实现功能,更需要理解背后的原理。
CSS中设置border属性为0与none的区别
在我们设置CSS的时候,对标签元素不设置边框属性或者取消边框属性一般设置为:border:none;或border:0;两种方法均可。border:none;与border:0;的区别体现有两点:一是理论上的性能差异、二是浏览器兼容性的差异。
【border:0;】把borde…
响应式开发心得
什么是响应式?响应式的页面在不同的屏幕有不同的布局,换句话说,使用相同的html在不同的分辨率有不同的排版。如下图所示: 响应式布局是为了解决适配的问题,传统的开发方式是PC端开发一套,手机端再开发一套,而使用响应式布局只要开发一套就好了。因为它是用的同样html,所以它的JS…
CSS外边距(margin)重叠及防止方法
外边距重叠是指两个或多个盒子(可能相邻也可能嵌套)的相邻边界(其间没有任何非空内容、补白、边框)重合在一起而形成一个单一边界。本文针对相邻、嵌套该两个场景提出来解决方案。
JavaScript 在 V8 中的元素种类及性能优化
JavaScript 对象可以具有与它们相关联的任意属性。对象属性的名称可以包含任何字符。JavaScript 引擎可以进行优化的一个有趣的例子是当属性名是纯数字时,一个特例就是数组索引的属性。
CSS |《CSS揭秘》读书笔记(一)
就在最近这几年,CSS领域已经发生了极大的好转。(绝大多数)浏览器已经在兼容性上逐渐趋同,它们不兼容的地方几乎都是因为某一家支持了某个特性,而另一家还没支持——这比两家都支持但效果不一样要强多了。我们现在不需要再刻意记录某个浏览器的bug了。
一、标准的制定过程 与大众的理解大…
2017前端面试题及答案总结|掘金技术征文
"金三银四,金九银十",用来形容求职最好的几个月。但是随着行业的饱和,初中级前端er就业形势不容乐观。 行业状态不可控,我们能做的当然只是让自己变得更加具有竞争力。 今年自己也用了几个月的时间来准备笔记面试,巩固基础知识。特此将自己在这个过程总结的题目分享出来,希望对于求职和准…
总结个人使用过的移动端布局方法
这篇文章,主要是总结一下,我在移动端布局用过的方法。有三种,一种是响应式布局,利用@meida判断各个size;第二种是REM;最后是设置viewport中的width。
这种感觉是最好理解了,利用@media进行断点,在每个断点中编写css。
上面这段代码,在浏览器的宽度低于…
this、apply、call、bind
这又是一个面试经典问题~/(ㄒoㄒ)/~~也是 ES5中众多坑中的一个,在 ES6 中可能会极大避免 this 产生的错误,但是为了一些老代码的维护,最好还是了解一下 this 的指向和 call、apply、bind 三者的区别。 在 ES5 中,其实 this 的指向,始终…
开源电子书《我的职业是前端工程师》
2017 年 1 月份,看完村上春树的新书《我的职业是一个小说家》,我便萌发了写一个《我的职业是前端工程师》系列文章的想法——以个人视角来看前端领域的各种技术。整个系列的文章大概有 15 篇左右,从我是如何成为一个前端工程师,到各种前端框架的知识。
CSS 写作建议和性能优化小结
还有几天就到国庆中秋了,快要放假了,先祝大家节日快乐!之前写过js的写作建议和技巧,那么今天就来聊聊css吧!说到css,每一个网页都离不开css,但是对于css,很多开发者的想法就是,css只要能用来布局,把效果图排出来就可以了,其它的细节或者优化,不需要怎么考虑。但是我觉得…
WEB 前端规范
此为前端开发团队遵循和约定的代码书写规范,意在提高代码的规范性和可维护性。
此规范为参考规范,不全是硬性要求,部分硬性约定见下一条书写规范,统一团队编码规范和风格。让所有代码都是有规可循的,并且能够得到沉淀,减少重复劳动。
20个CSS高级技巧汇总
20个CSS高级技巧汇总。使用技巧会让人变的越来越懒,没错,我就是想让你变懒。
javascript函数式编程系列 ② 优雅的使用underscore进行函数编程
所谓一等公民①顾名思义身份高,JS任何只要是值能到达的地方,函数都可以去。 这种编程方式很常见,谁都会写,我们一般叫这种编程方式称之为命令编程②,这个逻辑完全在你掌握之中,你只要规定计算机在你想要的时候执行一些不同的动作就可以了。 下文中出现的注解underscore方法会在文…
前端 101:给不了解前端的同学讲前端
大家好,今天的分享主要分为以下三个部分。 由于目前计算机专业还没有为 Web 前端技术设立专门的课程,每位同学对前端的了解程度也不一样,今天的讲座会以最浅显的方式来为大家介绍 “前端”,帮助大家建立一个基本的概念。 我们来简单地看一看 “网页展现” 的整个过程。 比如这里有一个…
JavaScript 实现手机横竖屏事件
在做H5项目时,需要在横竖屏变化时,做一些处理。原生的orientationchange事件又有兼容性问题,本文从orientationchange、resize监听、matchMedia三个方面讲了如何一步一步实现一个兼容性较强的监听横竖屏变化事件
关于JS中for循环时,作用域问题和this指针指向的总结
在大多数计算机语言中,{}这样一对花括弧叫一个块级作用域,也就是一个执行环境。在一个执行环境中,执行环境内部的变量在作用域外部式无法被访问到的。执行环境内部倒是可以访问外部的变量。 但由于JS中没有块级作用域,只有函数作用域。所以类似于像for(;;){ }这样的作用域,实际上…
你真的会用getBoundingClientRect吗
本文介绍了什么是getBoundingClientRect;以及获取width,height的兼容性写法;最后介绍了两个使用场景:获取页面元素的位置和判断元素是否在可视区域。
《JavaScript 正则表达式迷你书》问世了!
之前在本站发表了一篇文章,《JS正则表达式完整教程(略长)》,正如你所看到的那样确实很长,也获得了近1000人的喜欢。但文章太长,想必有很多同学看不下去,大都只是收藏罢了。因此我整理成一本pdf。既然只是收藏,那么收藏文章就不如收藏书来的好。其实,整理成pdf的灵感也来自本站读…
前端知识点大百科全书
今天 github 上看见以前的朋友总结的一片前端知识点的文章汇总,感觉收集的很全面,分享给大家,希望能够给大家带来帮助。
Q:你了解异步编程、进程、单线程、多线程吗?
同步:一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去。 异步:进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。 进程:狭…
前端代码规范 及 最佳实践 | Isobar
本文档包含了Isobar公司的创意技术部(前端工程)开发web应用的规范。现在我们把它开放给任何希望了解我们迭代过程最佳实践的人。
注意点——setTimeout、setInterval使用
第二段代码就不一样了,setInterval是当run()跑了不到10s,那么就是10s走一回,如果setInterval大于10s,我们后面详解。
前端面试问题(持续更新)
BFC: 提供一个环境,html元素会在这个环境中按照一定的规则进行布局。 ex: 例如浮动元素会形成bfc,浮动元素内部子元素主要受该浮动元素影响,但是两个浮动元素互相不影响。 这个可以理解为一个独立容器,里边规则不会影响到外边。 这些基本的比如比如哪儿是content大家都…
深入贯彻闭包思想,全面理解JS闭包形成过程
写这篇文章之前,我对闭包的概念及原理模糊不清,一直以来都是以通俗的外层函数包裹内层....来欺骗自己。并没有说这种说法的对与错,我只是不想拥有从众心理或者也可以说如果我们说出更好更低层的东西,逼格会提升好几个档次。。。
谈起闭包,它可是JavaScript两个核心技术之一(异步…
JS学习笔记 - 回调函数
本文章记录本人在学习 JavaScript 中看书理解到的一些东西,加深记忆和并且整理记录下来,方便之后的复习。
在js里函数都是对象,这表示它们可以作为参数传递给其他的函数。举例:当函数b()作为参数传递给函数a(),那么在某一时刻函数a()可能会执行或者调用函数b()。这种…
从输入 URL 到页面加载完成的过程中都发生了什么事情?
从硬件层面开始讲,涉及到的知识层面非常广。
JavaScript参数传递的深入理解
今天看到《JavaScript高级程序设计》里面关于参数传递的章节时,有点懵。本着“打破砂锅问到底”的精神,看了些别人写的博客和知乎上一些大神的解释,算是对参数传递有了个比较全面的了解。 在讲参数传递前,先要理解变量在内存中的存放方式。ECMAScript变量有可能是5种基本类…
给程序员看的Javascript攻略(完结)- 异步
原文发表在: holmeshe.me , 本文是汉化重制版。 本系列在 Medium上同步连载。 简单来讲,异步有两层含义,1)让慢操作不要阻塞;2)非线性触发事件。稍稍讲深一点,在操作系统里,事件也叫中断,这里一次中断可以代表一个网络收包,一次时钟,或者一次鼠标点击,等。那从…
前端开发知识点整理
熬了几个晚上,好几次心流状态,总计书写时间大约 12 个小时左右。写这篇文章的过程中,发现自己真的有很多不足、薄弱之处。
本文主要是前端知识的收集、归类、概括和整理,涵盖『前端理论』与『前端实践』两方面。本文会告诉你前端需要了解的知识大致有什么,看上去有很多,但具体你要学什么,还是要 follow your heart & follow your BOSS
写这篇文章主要有以下几个初衷:
梳理知识体系。网上虽然有许多类似的内容,但每个人都有各自独特的思维方式,适合自己的才是最好的。
探索不足之处。明确自己到底掌握了哪些,哪些本应掌握但还没有学习。
完善公司的前端培训方向。前端技能培训的方向由懂前端、懂公司前端团队的人来设定最好不过了。
希望借此激发大家的一点思考。我们都在路上,我不是成功的例子,我写下我的思考,希望借此激发大家的一点思考。
一个梗。自 2012 年以来,我知乎上获赞最多的答案却是引用他人的答案…… 有点尴尬:《一名合格的前端工程师的知识结构是怎样的?》
希望各位大佬多多指点~
by 吃土小 2 叉
【 js 基础 】 setTimeout(fn, 0) 的作用
1、浏览器的内核是多线程的,它们在内核控制下相互配合以保持同步,一个浏览器通常由以下常驻线程组成:GUI 渲染线程,javascript 引擎线程,浏览器事件触发线程,定时触发器线程,异步 http 请求线程。 GUI 渲染线程:负责渲染浏览器界面 HTML 元素,当界面需要重…
纯前端实现人脸识别-提取-合成
最近火爆朋友圈的军装照H5大家一定还记忆犹新,其原理是先提取出照片中的面部,然后与模板进行合成,官方的合成处理据说由天天P图提供技术支持,后端合成后返回给前端展示,形式很新颖效果也非常好,整个流程涉及的人脸识别和图像合成两项核心技术在前端都有对应的解决方案,因此理论上前端也可以完成人脸识别-提取-合成整个流程,实现纯前端的军装照H5效果。
JavaScript 腾讯面试题学习封装一个简易的异步队列
点击按钮的时候,用回调函数嵌套方式,这里我加入3个li,就已经快受不了了,这就是javascript著名的回调地狱,那么在这里,我用循环简化一下:
恩,确实简化了,但是这种面向过程的方式,耦合性太强,下面呢,我就把这个封装成一个通用队列 第一步:封装一个队列,包含( 入列,出列…
Web 的现状:网页性能提升指南
互联网发展非常迅速,所以我们创造了Web平台。通常我们会忽视连通性等问题,但用户们却不会视而不见。一瞥万维网的现状,可以发现我们并没有用同情心、变通意识去构建它,更不要说性能了。
所以,今天的Web是什么状态呢?
在这个星球上的74亿人中,只有46%可以上网。平均网络速度上限为…
从性能的角度看CSS选择器
从性能的角度看CSS选择器