摘要:
将多维数组(尤其是二维数组)转化为一维数组是业务开发中的常用逻辑,除了使用朴素的循环转换以外,我们还可以利用Javascript的语言特性实现更为简洁优雅的转换。本文将从朴素的循环转换开始,逐一介绍三种常用的转换方法,并借此简单回顾Array.prototype.concat方法和Function. 阅读全文
摘要:
1、缓存的分类 缓存分为服务端侧(server side,比如 Nginx、Apache)和客户端侧(client side,比如 web browser)。 服务端缓存又分为 代理服务器缓存 和 反向代理服务器缓存(也叫网关缓存,比如 Nginx反向代理、Squid等),其实广泛使用的 CDN 也 阅读全文
摘要:
一、tap与click的区别 两者都会在点击时系统自动触发,但是在手机WEB端,click会有 200~300 ms。延迟来自判断双击和长按,因为只有默认等待时间结束以确定没有后续动作发生时,才会触发click事件。所以触摸事件反应更快,体验更好。singleTap和doubleTap 分别代表单次 阅读全文
摘要:
不要被标题蒙蔽了,今天的重点不是论述事件触发器,而是说一下dispatchEvent这个东西。好了,先简单做个铺垫,dispatchEvent是作为高级浏览器(如chrome、Firfox等)的事件触发器来使用的,那么什么是事件触发器?就是触发事件的东西。可能有人觉得有点莫名其妙,触发事件不是在交互 阅读全文
摘要:
jQuery.fn.extend( object ) 一个对象的内容合并到jQuery的原型,以提供新的jQuery实例方法。 jQuery.fn.extend()方法继承了jQuery原型($.fn)对象,以提供jQuery原型新的方法,可以链式调用jQuery()函数。 jQuery.exten 阅读全文
摘要:
首先现在根目录先生存.babelrc文件 这个文件是用来设置转码的规则和插件的 如果想使用es6语法,必须安装插件 什么是.babelrc文件呢? 熟悉linux的同学一定知道,rc结尾的文件通常代表运行时自动加载的文件,配置等等,类似bashrc,zshrc 而且在babel6中,这个文件必不可少 阅读全文
摘要:
什么是Webpack WebPack可以看做是模块打包机:它做的事情是,分析你的项目结构,找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,TypeScript等),并将其转换和打包为合适的格式供浏览器使用。 安装 Webpack可以使用npm安装,新建一个空的练习文 阅读全文
摘要:
1.概述 ajax是asynchronous javascript and XML的简写,中文翻译是异步的javascript和XML,这一技术能够向服务器请求额外的数据而无须卸载页面,会带来更好的用户体验。虽然名字中包含XML,但ajax通信与数据格式无关 ajax包括以下几步骤:1、创建AJAX 阅读全文
摘要:
想要理解闭包,首先,要先理解变量的作用域 1.变量的作用域 变量的作用域有两种:全局作用域和局部作用域。 在 javascript 中,声明的函数内部可以获取到声明的全局变量,另一种,从外部无法直接获取到函数内部所声明的变量。 这里有一个地方需要注意,函数内部声明变量的时候,一定要使用var命令。如 阅读全文
摘要:
1.原始写法 模块就是实现特定功能的一组方法。 只要把不同的函数(以及记录状态的变量)简单的放在一起,就算是一个模块。 上面的m1()和m2(),组成一个模块。使用的时候,直接调用。 这种写法的缺点:“污染”了全局变量,无法保证不与其他模块变量名发生冲突,而且模块成员之间看不出直接关系。 2.对象写 阅读全文