- 博客(8)
- 收藏
- 关注
原创 polifill的用处及一个简单实现
1、polifill是什么? Polyfill 是一块代码(通常是 Web 上的 JavaScript),用来为旧浏览器提供它没有原生支持的较新的功能。 定义详见:https://developer.mozilla.org/zh-CN/docs/Glossary/Polyfill 2、使用polifill的场景 比如常用的Promise,在caniuse(https://caniuse.c...
2020-04-15 22:54:08
829
原创 react中的state与props的区别
1、props是父组件向子组件传递数据的方式,子组件只能读取但不能修改props中的数据 1.1 在有状态组件中,子组件通过this.props.something获取父组件传递的数据 1.2 在无状态组件(也叫函数组件)中,通过prop.something获取父组件传递的数据 2、state组件的状态机,组件可以读取和修改组件的state,state的变化会引起组件的重新渲染。state可...
2020-04-15 22:21:42
543
原创 ES6箭头函数定义与其在react中的使用场景
1、ES6中的箭头函数是ES5匿名函数的语法糖(本身没有添加新功能,但是对人类更甜蜜的语法) var tt = function (){ return 3+4 } 等价于 var tt=()=>{3+4} 1.1 箭头函数继承父作用域的this,普通函数的this是全局变量global 1.2 与匿名函数的使用区别:要不要带当前作用域的this 2、react中箭头函数的用处...
2020-04-15 22:20:54
449
原创 虚拟DOM为什么会比真实DOM快??
1、浏览器加载到HTML文档后,会将HTML解析为DOM数,CSS解析为CSSOM树,DOM和CSSOM合并起来就是render树;在修改DOM树、修改样式表或者用户触发事件时会导致render树重新渲染,重新渲染可能会引发重绘和回流,这两个操作都很耗时。 2、在浏览器中,渲染引擎和JS引擎是分离的,渲染引擎会暴露一些接口给JS调用,这里的通信也是要付出代价的;所以尽可能减少对DOM的操作可以达...
2020-04-15 22:20:15
2695
3
原创 url中的‘#’的作用及读写方法
1、‘#‘代表网页的一个位置,‘#‘’右边的字符是该位置的标识符。 为网页位置指定标志符的两种方法: 1)使用锚点 2)使用id属性 2、‘#‘用来对浏览器指导动作对服务器完全无用,HTTP请求不包括‘#‘的内容。 react中的hashRouter? 3、用window.location.hash进行‘#‘属性的读写。 ...
2020-04-15 22:19:22
1187
原创 webpack中输出 bundle 的命名
webpack中输出 bundle 的名称主要有以下几种: 1、[hash]模块标识符(module identifier)的 hash。此时所有的bundle都有同样的名字,不利于缓存技术,切编译打包耗时多,因为一个小改动就会使得所有文件重新打包。 2、[chunkhash]chunk 内容的 hash。每个bundle都有不同的名字。但是此时改动样式会引起整个bundle重新打包。使用插件...
2020-04-15 22:17:24
401
原创 webpack入门--从零开始安装webpack到搭配react使用
最近开发的环境都是基于react+webpack的,但是是在搭建好环境中进行开发;很多东西都是知其然不知其所以然,所以决定自己动手从零开始安装react+webpack开发环境。这篇文章就记录了整个搭建的步骤,虽然目前还是很基础的一个项目环境,但是经过这一次实践下来,我加深了对webpack配置的了解,也解开了以前遇到的一些疑惑。还是小白一枚,文中如有不对或不妥当的地方,希望各路大神不吝赐...
2019-06-05 20:43:24
229
转载 Chrome 中的 JavaScript 断点设置和调试技巧
装载自:http://blog.csdn.net/peace_of_soul/article/details/43406631你是怎么调试 JavaScript 程序的?最原始的方法是用 alert() 在页面上打印内容,稍微改进一点的方法是用 console.log() 在 JavaScript 控制台上输出内容。嗯~,用这两种土办法确实解决了很多小型 JavaScript 脚本的调试问题。不过放
2017-02-23 09:47:43
243
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人