05 2021 档案
摘要:我们知道react的jsx语法最终会被babel转译成 React.createElement语法,通过这个语法,react节点就会被编译成一棵vdom树结构,我们看一个例子 let ele1 = <h1 id="title"> <span>hello</span> <span>world</spa
阅读全文
摘要:直接粘代码,如果发现Jquery引入出错了,更新一下Jquery CDN链接。 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> *{ margin:0; pa
阅读全文
摘要:1、思路: 因为offsetTop、scrollTop等不属于css属性,所以这些无法用css动画或过度来实现。首先想到的是使用position + top 定位结合 transition 来实现。 2、效果: 3、原生代码: <!DOCTYPE html> <html lang="zh"> <he
阅读全文
摘要:一、先说一下react react是基于数据是不可变的(每次setState都会返回一个新数据),这也是为什么需要setState()来更新数据而不能使用像vue的this.state = newState的形式更新数据的原因,其实你用this.state=newState确实可以改数据,但是rea
阅读全文
摘要:概念: 为什么是16.67毫秒: 这个根据浏览器刷新帧率来定,大多数浏览器的刷新帧率是60Hz,所以1/60 = 0.0166666... (秒)= 16.67(毫秒) 如果一个任务耗时很长,那么时间用完后会中断该任务吗? 不会中断该任务,一直到执行完毕为止,所以如果单个任务耗时很长,那么也会造成卡
阅读全文
摘要:offsetWidth:返回元素的宽度(包括元素宽度、内边距和边框,不包括外边距) offsetHeight :返回元素的高度(包括元素高度、内边距和边框,不包括外边距) clientWidth :返回元素的宽度(包括元素宽度、内边距,不包括边框和外边距) clientHeight:返回元素的高度(
阅读全文
摘要:利用seTimeout实现的动画在某些低端机上会出现卡顿、抖动的现象。 这种现象的产生有两个原因: setTimeout的执行时间并不是确定的。在Javascript中, setTimeout 任务被放进了异步队列中,只有当主线程上的任务执行完以后,才会去检查该队列里的任务是否需要开始执行,因此 s
阅读全文
摘要:条件语句如'if'语句使用强制`ToBoolean'抽象方法来评估它们的表达式,并且始终遵循以下简单规则: Objects 计算成 true Undefined 计算成 false Null 计算成 false Booleans 计算成 the value of the boolean Number
阅读全文
摘要:原因:链接变量分配创建隐式全局变量,会污染全局环境。 // bad (function example() { // JavaScript 将这一段解释为 // let a = ( b = ( c = 1 ) ); // let 只对变量 a 起作用; 变量 b 和 c 都变成了全局变量 let a
阅读全文
摘要:js函数传参是对数据的浅拷贝,如果是复杂数据类型的对象,那么对数据的修改会改变原始数据,而简单数据类型的则不会,测试代码如下: let obj = { name: '海子', } function changeObj(param) { param.name = 'haizi' } changeObj
阅读全文