js
爱写日记的仙女
仙女
展开
-
javascript中的null与undefined
1.null(当做对象的占位符)null是一个特殊值,常与undefined搞混,应用场景:用来初始化一个变量,这个变量可能赋值为一个对象用来和一个已经初始化的变量比较,这个变量可以是一个对象也可以不是当函数的参数期望是对象时,用作参数传入当函数的返回值期望是对象时,用作返回值传出不应当使用null:不要使用null来检测是否传入了某个参数不要用null来检测一个未初始化的变...原创 2019-11-26 11:01:58 · 400 阅读 · 0 评论 -
高性能javascript--算法和流程控制
for,while和do-while性能相当避免使用for-in循环,除非遍历一个属性量未知的对象es5:for-in 遍历的对象便不局限于数组,还可以遍历对象。原因:for-in每次迭代操作会同时搜索实例或者原型属性, for-in 循环的每次迭代都会产生更多开销,因此要比其他循环类型慢,一般速度为其他类型循环的 1/7。因此,除非明确需要迭代一个属性数量未知的对象,否则应避免使用 f...原创 2019-11-22 14:35:51 · 192 阅读 · 0 评论 -
高性能javascript--编程实践
高性能javascript–编程实践- setTimeout()和settimeInterval()传递函数而不是字符串作为参数引申:用setTimeout()方法来模拟setInterval()与setInterval()之间的什么区别?精确度问题?微任务和宏任务问题?macro-task(宏任务):包括整体代码script,setTimeout,setIntervalmicro-...原创 2019-11-22 14:34:43 · 162 阅读 · 0 评论 -
懒加载和预加载
一、图片的懒加载1.概念懒加载也叫延迟加载,指的是在长网页中延迟加载图像,是一种很好优化网页性能的方式。用户滚动到它们之前,可视区域外的图像不会加载。这与图像预加载相反,在长网页上使用延迟加载将使网页加载更快。在某些情况下,它还可以帮助减少服务器负载。常适用图片很多,页面很长的电商网站场景中。2.原因能提升用户的体验,不妨设想下,用户打开像手机淘宝长页面的时候,如果页面上所有的图片都需要...原创 2019-11-22 12:21:50 · 394 阅读 · 0 评论 -
js面向对象的理解(一)创建对象
面试前端开发岗位,问如何理解js的面向对象,一下竟然有点懵,不知道怎么回答脑海立马呈现java中面向对象的三个概念:封装,继承,多态,可偏偏没有问前两个,面试官直接让解释多态,然后回想了一下看过的js,立马并没有多态的概念,回来仔细读看红宝书的面向对象的程序设计一章一、理解对象js中的对象:指无序属性的集合,其属性值包含基本值,对象或者函数即:名和值的对其中值可以是数据或者是函数...原创 2019-03-18 17:21:43 · 242 阅读 · 0 评论 -
前端性能优化
作为前端工程师,拥有巨大的能力和责任,是用户的最后一道防线,前端直接决定用户的体验前端性能的重要性事实上,只有10%–20%的最终用户响应时间是花在从web服务器获取html文档并传送到浏览器中的。如果希望有效减少页面响应时间,就必须关注剩余80%–90%的最终用户体验了解用户时间都花在等待哪些地方?5%html文档95%等待页面组件下载(图片,脚本,样式表,flash等)小部分时间...原创 2019-08-24 23:54:58 · 218 阅读 · 0 评论 -
ES6之Array.from()方法
ES6之Array.from()方法Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组。a.类数组对象常见的:dom操作返回的Nodelist集合和函数内部的arguments对象b.可遍历对象(iterable)原生具有iterator接口的数据结构Array,map,set,string,typedarray,函数的arguments对象,node...原创 2019-09-09 23:52:06 · 299 阅读 · 0 评论 -
ES6之Array.of()方法
Array.of()方法用于将一组值转化为数组,即新建数组Array.of() // []Array.of(undefined) // [undefined]Array.of(1) // [1]Array.of(1, 2) // [1, 2]对比Array()和new Array()Array() // []Array(3) // [, , ,]Array(3, 11, 8) /...原创 2019-09-10 00:02:18 · 2250 阅读 · 0 评论 -
ES6之includes()方法
Array.prototype.includes方法返回一个布尔值,表示某个数组是否包含给定的值,与字符串的includes方法类似。参数1)第一个参数是要查找的元素2)第二个参数表示搜索的起始位置,默认为 0 。如果第二个参数为负数,则表示倒数的位置,如果这时它大于数组长度(比如第二个参数为 -4 ,但数组长度为 3 ),则会重置为从 0 开始。只有一个参数情况[1, 2, 3].in...原创 2019-09-10 14:18:00 · 12838 阅读 · 3 评论