Menu

2020年3月发表的所有文章

排序算法

每个语言一般都有语言自带的排序方法,每个语言的排序内部实现都是不同的。对于 JS 来说,数组长度大于 10 会采用快排,否则使用插入排序。抛开语言自带的排序方法,这里总结了一些排序的算法…

ES6之includes方法详解及其与indexOf区别

Array.prototype.includes方法返回一个布尔值,表示某个数组是否包含给定的值,与字符串的includes方法类似。ES2016引入了该方法。 includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。 includes()方法在字符串中使用时,相当于indexOf(),查询成功返回true,失败返回false。 'abc'.inc...

DOM之事件触发、冒泡、捕获详解

DOM触发事件方法 1.html attribute 标签中添加事件属性 <input value="Click me" onclick="alert('Click!')" type="button"> js逻辑在属性里创建,不是很好,写到一个方法里. <script> function countRabbits() { for(let i=1; i<=3; i++) { alert("Rabbit number " + i); } }...

js外部脚本异步加载方式

如何异步加载js脚本 1.动态插入标签的方式 通过操作dom,可以在任意位置创建js脚本,这种方式优点是无论在何时启动下载,文件的下载和执行过程不会阻塞页面其他进程(包括脚本加载)。 var script=document.createElement('script'); script.type='text/javaScript'; script.src='file1.js'; document.getElements...

如何优化CSS阻塞

默认情况下,CSS 被视为阻塞渲染的资源,这意味着浏览器将不会渲染任何已处理的内容,直至 CSSOM 构建完毕。所以要精简 CSS,尽快提供它,并利用媒体类型和查询来解除对渲染的阻塞。 总而言之,记住下面这几条: 默认情况下,CSS 被视为阻塞渲染的资源。 我们可以通过媒体类型和媒体查询将一些 CSS 资源标记为不阻塞渲...

密码保护:面试之个人简介

您好,我叫宫晓辉,关于一些个人信息在简历上可以看到。 我毕业这些年呢一直从事前端相关的工作,大致应该有6-7年的工作经验了。 大学并非主修的计算机,但我对这一块比较感兴趣。早在2012年的时候就开始做个人网站,也开始研究学习网页方面的前端相关的技术。 我的知识也是从那时候开始慢慢积累。但当时候也没有想过未...

js知识总结—基础进阶篇

1.eval(jsstr)和new Function(jsstr) eval和new Function都可以动态解析和执行字符串。会将字符串转义为js代码。区别如下: 1.对解析内容的运行环境判定不同:eval中的代码执行时的作用域为当前作用域,它可以访问到函数中的局部变量,也可以访问全局变量。new Function中的代码执行时的作用域为全局作用域,不论它的在...

js知识总结—基础知识篇

1.js判断变量类型 typeof可以判断一般类型。但无法准确识别对象。所有对象或类对象类型(null)都为”object”,比如数组typeof [] == "object"。JS数据类型在底层都是以二进制的形式表示的,二进制的前三位为 0 会被 typeof 判断为对象类型,而 null 的二进制位恰好都是 0 ,因此,null 被误判断为 Object ...