标签:开发
对于前端程序员来说闭包还是比较难以理解的, 闭包的形成与变量的作用域以及变量的生产周期密切相关,所以要先弄懂变量的作用域和生存周期。 1.变量作用域   变量的作用域,就是指变量的有效范围,通常我们指的作用域就是函数作用域(毕竟全局的作用域没有要指的意义,关键哪都能访问)   声明变量的时候推荐使用
高阶组件 简单来说,高阶组件可以看做一个函数,且该函数接受一个组件作为参数,并返回一个新的组件。 我在之前的博客《闭包和类》中提到一个观点,面向对象的好处就在于,易于理解,方便维护和复用。 其实高阶组件,也是为了更好地复用之前的组件。它可以理解为,基础组件通过包裹处理,生成一个适应某些场景的组件
1.event.stopPropagation()方法 这是阻止事件的冒泡方法,不让事件向documen上蔓延,但是默认事件任然会执行,当你掉用这个方法的时候,如果点击一个连接,这个连接仍然会被打开, 2.event.preventDefault()方法 这是阻止默认事件的方法,调用此方法是,连接不
JavaScript流程控制语句脑图      图片是从网上找来的,在这记录一下,以备后面需要的时候查找方便。 JavaScript通过规定的语句让有条件的按照一定的方式执行。 分为:循环语句      while      do-while      for      for-in    跳转语句
在网页中,实现动画无外乎两种方式。1. CSS3 方式,也就是利用浏览器对CSS3 的原生支持实现动画;2. 脚本方式,通过间隔一段时间用JavaScript 来修改页面元素样式来实现动画。接下来我们就分别介绍这两种方式的原理,让大家先对这两种方式有一个直观认识,了解各自的优缺点。 CSS3 的方式
JavaScript 中的 ajax 很早之前就有一个诟病————复杂业务下的 callback 嵌套的问题。promise 正是 js 中解决这一问题的钥匙。 接下来我们在react项目中应用到的fetch 就用到了最新的 promise。 那我们如何在react项目中应用fetch呢? 第一步:
本博文配合 阮一峰 《ES6 标准入门(第3版)》一书进行简要概述 ES6 中变量的解构赋值。    数组的解构赋值 基本用法 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为
JavaScript比较和逻辑运算符   JavaScript比较和逻辑运算符 比较和逻辑运算符用于测试true或者false。 比较运算符 比较运算符在逻辑语句中使用,以测定变量或值是否相等 例如设定x = 5; 运算符 描述 比较 返回值 == 等于 x == 8 false === 绝对等于(
  Webpack已经出来很久了,相关的文章也有很多,然而比较完整的例子却不是很多,让很多新手不知如何下脚,下脚了又遍地坑 说实话,官方文档是蛮乱的,而且有些还是错的错的。。很多配置问题只有爬过坑才知道 本文首先介绍Webpack(3)的一些基础知识,然后以
为了统一团队的代码规范,除了一纸规范说明之外,还需要引入工具进行限制。虽说工具并不能完全实现规范中的规则,但至少能够在一定程度上缓解代码不统一的局面。 相对于后端,前端代码规范的质量检查涉及到HTML, CSS,Javascript ,如今还涉及到SCSS,ES5,JSX,  React,
web安全中有很多种攻击手段,除了SQL注入外,比较常见的还有 XSS 和 CSRF等   一、XSS(Cross Site Scripting)跨站脚本   XSS其实就是Html的注入问题,攻击者的输入没有经过严格的控制进入了数据库,最终显示给来访的用户,导致可以在
Redux是一个数据状态管理插件,论是移动端还是 pc 端,当你使用 React 或者 vue 开发组件化的 SPA 程序时, 组件之间共享信息是一个非常大的问题。在react开发中,使用 React 开发系统,绝大部分都需要结合 Redux 来使用。 第一步安装 安装redux的时候,我们经常也会
阮一峰ES6入门 let 作用域 let命令用来声明变量,但声明的变量只在let命令所在的代码块内有效。 { let a = 10; var b = 1; } a // ReferenceError: a is not defined. b // 1 for循环 上图代码中i是var声
1. ReactJS是什么? 1). Facebook开源的一个js库 2). 一个用于动态构建用户界面的js库2. React的特点 * Declarative(声明式编码) * Component-Based(组件化编码) * Learn Once, Write Anywh