MutationObserver 监听 DOM 树变化

2019-01-08
阅读 7 分钟
6.7k
MutationObserver 是用于代替 MutationEvents 作为观察 DOM 树结构发生变化时,做出相应处理的 API 。为什么要使用 MutationObserver 去代替 MutationEvents 呢,我们先了解一下 MutationEvents

二叉树的实现

2018-06-22
阅读 5 分钟
3.2k
二叉树(Binary Tree)是另一种树型结构,它的特点是每个结点至多只有两棵子树(即二叉树中不存在度大于 2 的结点),并且,二叉树的子树有左右之分(其次序不能任意颠倒。)

数组的操作

2018-03-22
阅读 4 分钟
1.4k
数组的创建 {代码...} 数组的添加 push()方法将一个或多个新元素添加到数组结尾,并返回数组新长度,数组不变 {代码...} unshift()方法将一个或多个新元素添加到数组头部,并返回数组新长度,数组不变 {代码...} splice()将一个或多个新元素插入到数组的指定位置,插入位置的元素自动后移,返回""。 {代码...} 数组的删除 ...

函数防抖,函数节流

2018-03-22
阅读 2 分钟
1.7k
::实例:: 如果有人进电梯(触发事件),那电梯将在10秒钟后出发(执行事件监听器),这时如果又有人进电梯了(在10秒内再次触发该事件),我们又得等10秒再出发(重新计时)。

apply&&call&&bind

2018-03-22
阅读 1 分钟
1.2k
用来改变函数的this对象的指向 都是用来改变函数的this对象的指向的。 第一个参数都是this要指向的对象。 后面的参数是调用方法的参数。 都可以利用后续参数传参。 {代码...} 调用: {代码...} 在有参数的情况下call和apply产生区别: {代码...} 调用形式: call以及bind后面的参数与say方法中是一一对应的 apply的第二...

shell脚本基础知识

2017-01-20
阅读 9 分钟
3k
mac终端下运行shell脚本 写好自己的脚本,比如aa.sh 打开终端执行 方法一:输入命令./aa.sh 方法二:直接把aa.sh拖入到终端里面 注意事项: 如果没有成功报出问题: {代码...} 解决办法:修改该文件aa.sh的权限: {代码...} 然后再执行上面第二步的操作。 变量 定义变量 {代码...} 首个字符必须为字母(a-z,A-Z)。 中...

利用vue制作在线涂鸦板

2017-01-04
阅读 4 分钟
16.9k
效果展示 Canvas API简介 调用方法 getImageData() 返回ImageData对象,该对象为画布上指定的矩形复制像素数据 putImageData() 把图像数据(从指定的 ImageData 对象)放回画布上 clearRect() 在给定的矩形内清除指定的像素 toDataURL() 返回canvas图像的URL lineTo() 添加一个新点,创建从该点到最后指定点的线条 strok...

webpack按需加载之react实践

2016-12-12
阅读 2 分钟
10.5k
加载项目时,不管那些代码有没有执行到,都会下载下来。如果说,我们只下载我们需要执行的代码话,那么可以节省相当大的流量。也就是我们所说的按需加载,这对于大型项目是相当有用的。

javascript递归

2016-12-12
阅读 1 分钟
3.3k
调用自身的函数称为递归函数 缺点:递归占用的内存和资源比较多,同时难以实现和维护。 优点:在处理DOM之类的树形结构数据时,非常适合用递归。 案例 数字 n 的阶乘通过乘以 1 2 3 *... n 进行计算 {代码...} 获取存在某个字段的节点 {代码...} js递归实现数组转树结构 {代码...}

基于react的audio组件

2016-12-12
阅读 4 分钟
15.1k
样式请自己定义哦~需要其他功能请自行添加! {代码...} audio属性 src 歌曲的路径 preload 是否在页面加载后立即加载(设置autoplay后无效) controls 显示audio自带的播放控件 loop 音频循环 autoplay 音频加载后自动播放 currentTime 音频当前播放时间 duration 音频总长度 ended 音频是否结束 muted 音频静音为true v...

reudx-action构建工具(redux-act)

2016-09-29
阅读 9 分钟
7.9k
这是一个自用的工具用于创建actions和reducers用于redux。主要的目标是使用action本身作为reducer的引用而不是变量。

ES6展开运算符

2016-09-27
阅读 2 分钟
23.3k
语法 用于函数调用 {代码...} 用于数组字面量 {代码...} 函数传参 目前为止,我们都是使用Function.prototype.apply方法来将一个数组展开成多个参数: {代码...} 使用es6的展开运算符可以这么写: {代码...} 选择性传参 {代码...} 还可以同时展开多个数组: {代码...} 数据解构 {代码...} 数据构造 两个对象连接返回新的对...

数组的操作

2016-09-27
阅读 4 分钟
2k
数组的创建 {代码...} 数组的添加 push()方法将一个或多个新元素添加到数组结尾,并返回数组新长度,数组不变 {代码...} unshift()方法将一个或多个新元素添加到数组头部,并返回数组新长度,数组不变 {代码...} splice()将一个或多个新元素插入到数组的指定位置,插入位置的元素自动后移,返回""。 {代码...} 数组的删除 ...

react&redux基础

2016-09-27
阅读 4 分钟
2.5k
Redux 主要分为三个部分 Action、Reducer、及 Store 原理: view直接触发dispatch; 将action发送到reducer中后,根节点上会更新 state,改变全局view。 本案例以一个提到TODOLIST为案例。 Action 在 Redux 中,action 主要用来传递操作 State 的信息,只是一种命令,并没有实际改变state。 我们约定,action 内必须使用...

react-router使用总结

2016-09-27
阅读 8 分钟
7.4k
react-router API 基本用法 安装命令: {代码...} 使用展示: {代码...} Router组件本身只是一个容器,真正的路由要通过Route组件定义。 {代码...} 代码解释: 用户访问根路由/(比如http://www.example.com/),组件APP就会加载到document.getElementById('app')。 Router组件有一个参数history,它的值hashHistory表示...

【译】fetch用法说明

2016-09-27
阅读 5 分钟
36.3k
由于 FetchAPI 是基于 Promise 设计,有必要先学习一下 Promise,推荐阅读 MDN Promise 教程 本文章内容推荐阅读 MDN Fetch 教程 语法说明 {代码...} 具体参数案例: {代码...} url 定义要获取的资源。这可能是: 一个 USVString 字符串,包含要获取资源的 URL。 一个 Request 对象。 options(可选) 一个配置项对象,...

AngularJs中的provide

2016-09-27
阅读 3 分钟
4.7k
AngularJS用$provide去定义一个供应商,这个$provide有5个用来创建供应商的方法: constant value service factory provider decorator Constant 定义常量用的,它定义的值当然就不能被改变,它可以被注入到任何地方,但是不能被装饰器(decorator)装饰 {代码...} 语法糖: {代码...} Value 它可以是string,number甚至func...

AngularJs中的directive(二)

2016-09-27
阅读 3 分钟
2.4k
require ? 如果在当前指令中没有找到所需的控制器,就会将null传递给link函数中的第四个参数 ^ 如果添加了这个前缀,指令会在上游的指令链中查找require参数所指定的控制器 ?^ 合并了前面两个说法 没有前缀 指令就会自身提供的控制器中查找,如果没有查找到,就会抛出异常来。 link 对于link 与scope scope,我们需要用...

AngularJs中的directive(一)

2016-09-27
阅读 6 分钟
11.7k
{代码...} restrict 类型:(字符串)可选参数 取值有:E(元素),A(属性),C(类),M(注释),其中默认值为A; E(元素):<directiveName></directiveName> A(属性):<div directiveName='expression'></div> C(类):<div class='directiveName'></div> M(注释):<-- directive:direct...

[译] Vue 2.0 的变化(二)之其他重大更改

2016-09-27
阅读 6 分钟
24.7k
v-for迭代语法变化 丢弃$index和$key 新数组语法 value in arr (value, index) in arr 新对象语法 value in obj (value, key) in obj (value, key, index) in obj 指令接口的改变 大体来说,2.0版本中指令大范围的降低功能,它们仅用于低层次的直接dom操作。在多数情况下,你更应该使用组件作为主要的代码重构抽象。 指...

[译] Vue 2.0 的变化(一)之基本 API 变化

2016-09-26
阅读 3 分钟
23.5k
模板解析器不再依赖于DOM(除非你使用真正的DOM作为模板),因此只要你使用字符串模板,你将不再受到任何1.0版本中的解析限制。但是,如果你依赖在存在的内容中挂载一个元素作为模板(使用el元素),你将依然受到这些限制。

React组件生命周期

2016-09-18
阅读 4 分钟
2.6k
组件的生命周期包含三个主要部分: 挂载: 组件被插入到DOM中。 更新: 组件被重新渲染,查明DOM是否应该刷新。 移除: 组件从DOM中移除。 React提供生命周期方法,你可以在这些方法中放入自己的代码。我们提供will方法,会在某些行为发生之前调用,和did方法,会在某些行为发生之后调用。 装载组件触发 getInitialState...