摘要:
基本概念 Context是 react中为了避免在不同层级组件中逐层传递props的产物,在没有Context的时候父组件向子组件传递props属性只能在组件树上自上而下进行传递,但是有些属性并不是组件树的每层节点都有相同的需求,这样我们再这样逐层传递props就显得代码很繁琐笨重。 使用React 阅读全文
posted @ 2021-07-07 19:08
陌路y
阅读(144)
评论(0)
推荐(0)
摘要:
首先本人通过一个案例来展示jQuery的链式编程风格。先写一个页面,展示一个列表,代码如下: <body> <div> <ul class="menu"> <li class="level1"> <a href="#">水果</a> <ul class="level2"> <li><a href=" 阅读全文
posted @ 2021-07-07 19:07
陌路y
阅读(146)
评论(0)
推荐(0)
摘要:
Promise API改变了JavaScript的游戏。我们从滥用settimeout和解决同步操作到尽一切可能利用这个新的异步API。让我们来看看一些令人敬畏的Promise API技巧! 取消获取请求 我们立即抱怨的一个问题是无法取消承诺。一个简单的promiseInstance.cancel( 阅读全文
posted @ 2021-07-07 19:05
陌路y
阅读(93)
评论(0)
推荐(0)
摘要:
let/const ES6最基本的功能:let和const。 let与var类似,但使用let声明的变量的作用域是在声明它们的块中。(Block指条件块,for循环块等) 例如,在条件块中使用let将在块内作用域变量,在块外不可用。 if (true) { let foo = "word"; } c 阅读全文
posted @ 2021-07-07 19:04
陌路y
阅读(139)
评论(0)
推荐(0)
摘要:
1:变量与属性 以下代码输出什么: const object = { message: 'Hello, World!', getMessage() { const message = 'Hello, Earth!'; return this.message; }};console.log(objec 阅读全文
posted @ 2021-07-07 19:03
陌路y
阅读(143)
评论(0)
推荐(0)
摘要:
前言 二叉树(Binary Tree)是一种树形结构,它的特点是每个节点最多只有两个分支节点,一棵二叉树通常由根节点、分支节点、叶子节点组成,如下图所示。每个分支节点也常常被称作为一棵子树,而二叉堆是一种特殊的树,它属于完全二叉树。 二叉树与二叉堆的关系 在日常工作中会遇到很多数组的操作,比如排序等 阅读全文
posted @ 2021-07-07 19:02
陌路y
阅读(100)
评论(0)
推荐(0)
摘要:
1. 图形平移 首先我们来看如何实现图形的平移操作。 平移的操作就是将图形的原始坐标加上对应的移动距离。首先来看下平移的实现 const vertexShaderSource = "" + "attribute vec4 apos;" + // 定义一个坐标 "uniform float x;" + 阅读全文
posted @ 2021-07-07 19:01
陌路y
阅读(142)
评论(0)
推荐(0)
摘要:
防抖和节流函数是我们经常用到的函数,在实际的开发过程中,如 scroll、resize、click、键盘等事件很容易被多次触发,频繁的触发回调会导致页面卡顿和抖动,为了避免这种情况,需要使用节流和防抖的方法来减少无用的操作和网络请求,也是面试中经常遇到的问题,需要牢牢掌握。 防抖和节流的本质 都是闭 阅读全文
posted @ 2021-07-07 18:59
陌路y
阅读(375)
评论(0)
推荐(0)
摘要:
简单无缝滚动轮播图存在很多漏洞,就是后期增加图片时会很不方便,需要改动的地方也很多,耦合性也很强,只适用于一部分程序,所以我们可以通过改动图片结构和计算折算点的方式,升级代码。 原简单的滚动轮播代码 <html> <head> <meta charset="UTF-8"> <meta http-eq 阅读全文
posted @ 2021-07-07 18:58
陌路y
阅读(242)
评论(0)
推荐(0)
摘要:
1. 要调试什么 我们主要要知道调试什么,最终回去到什么样子的结果: 调试接口,传入接口地址,即可获取对应的结果;并且可以同时调试多个设备;调试 jsapi,输入对应的方法,则即可在新闻客户端中展示出效果。 在调试接口方面,其实我们有一种方法可以方便地进行调试,但有两个限制条件:Android系统和 阅读全文
posted @ 2021-07-07 18:57
陌路y
阅读(235)
评论(0)
推荐(0)
摘要:
计算机科学中最常用和讨论最多的数据结构之一是二叉搜索树。这通常是引入的第一个具有非线性插入算法的数据结构。二叉搜索树类似于双链表,每个节点包含一些数据,以及两个指向其他节点的指针;它们在这些节点彼此相关联的方式上有所不同。二叉搜索树节点的指针通常被称为“左”和“右”,用来指示与当前值相关的子树。这种 阅读全文
posted @ 2021-07-07 18:56
陌路y
阅读(149)
评论(0)
推荐(0)
摘要:
背景 Nodejs 事件循环是支撑Nodejs 非阻塞IO以及异步执行的基础,因此理解事件循环的执行也就可以写出正确的代码或者说我们就能更快的找出为什么不按我写的代码顺序执行的原因所在。 说起Nodejs事件循环,不得不提一个图,介绍的是Nodejs的事件循环示意图,其中将事件循环分为:timers 阅读全文
posted @ 2021-07-07 18:54
陌路y
阅读(314)
评论(0)
推荐(0)
摘要:
如何在JavaScript中使用toString方法 要使用该toString()方法,您只需要在一个number值上调用该方法。下面的示例演示如何将数字值24转换为其字符串表示形式。请注意,str变量的值如何用双引号引起来: var num = 24; var str = num.toString 阅读全文
posted @ 2021-07-07 18:53
陌路y
阅读(448)
评论(0)
推荐(0)
摘要:
1. 类(class) ES6引入了Class(类)这个概念,作为对象的模板,通过class关键字,可以定义类。基本上,ES6的class可以看作只是一个语法糖,它的绝大部分功能,ES5都可以做到,新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。上面的代码用ES6的“类” 阅读全文
posted @ 2021-07-07 18:51
陌路y
阅读(157)
评论(0)
推荐(0)
摘要:
箭头函数的注意事项 (1)函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象。(2)不可以当作构造函数,也就是说,不可以使用new命令,否则会抛出一个错误。(3)不可以使用arguments对象,该对象在函数体内不存在。如果要用,可以用 rest 参数代替。(4)不可以使用yiel 阅读全文
posted @ 2021-07-07 18:49
陌路y
阅读(790)
评论(0)
推荐(0)
摘要:
ES8新特性(2017) 与 ES6 相比,ES8 是 JavaScript 的一个小版本,但它仍然引入了非常有用的功能: async/awaitObject.values()Object.entries()String padding: padStart()和padEnd(),填充字符串达到当前长 阅读全文
posted @ 2021-07-07 18:12
陌路y
阅读(192)
评论(0)
推荐(0)
摘要:
ES9新特性(2018) 异步迭代 Promise.finally() Rest/Spread 属性 正则表达式命名捕获组(Regular Expression Named Capture Groups) 正则表达式反向断言(lookbehind) 正则表达式dotAll模式 正则表达式 Unico 阅读全文
posted @ 2021-07-07 18:11
陌路y
阅读(187)
评论(0)
推荐(0)
摘要:
假设你在一段陌生的代码中看到这样一个函数: function toLocalDate(date) { return date.replace(/(\d{2})-(\d{2})-(\d{4})/, "$2-$1-$3") } 单看这个函数你能知道它是想把“日-月-年”替换成“月-日-年”,还是反过来? 阅读全文
posted @ 2021-07-07 18:09
陌路y
阅读(156)
评论(0)
推荐(0)
摘要:
ES10新特性(2019) 行分隔符(U + 2028)和段分隔符(U + 2029)符号现在允许在字符串文字中,与jsON匹配更加友好的 JSON.stringify新增了Array的flat()方法和flatMap()方法新增了String的trimStart()方法和trimEnd()方法Ob 阅读全文
posted @ 2021-07-07 18:08
陌路y
阅读(254)
评论(0)
推荐(0)
摘要:
1. replaceAll 返回一个全新的字符串,所有符合匹配规则的字符都将被替换掉 const str = 'hello world';str.replaceAll('l', ''); // "heo word" 2. Promise.any Promise.any() 接收一个Promise可迭 阅读全文
posted @ 2021-07-07 18:06
陌路y
阅读(524)
评论(0)
推荐(0)
摘要:
引言 解构赋值是ES6中引入的一种能快速方便的进行变量赋值的方法,其主要也就是分为解构和赋值两部分内容。解构者,也就是匹配结构,然后分解结构进行赋值。 数组的解构赋值 使用 const arr = [1,3,5] const [a,b,c] = arr; console.log(a) // 1 co 阅读全文
posted @ 2021-07-07 18:04
陌路y
阅读(274)
评论(0)
推荐(0)
摘要:
1.理解基本类型和对象 JavaScript提供了2种数据类型:基本类型和对象。 基本类型有 number, boolean, string, symbol,null,undefined。 // 基本类型 const number = 10; const bool = false; const st 阅读全文
posted @ 2021-07-07 18:03
陌路y
阅读(98)
评论(0)
推荐(0)
摘要:
隐式丢失 由于模拟实现中有运用到隐式丢失, 所以在这还是先介绍一下。 隐式丢失是一种常见的this绑定问题, 是指: 被隐式绑定的函数会丢失掉绑定的对象, 而最终应用到默认绑定。说人话就是: 本来属于隐式绑定(obj.xxx this指向obj)的情况最终却应用默认绑定(this指向全局对象)。 常 阅读全文
posted @ 2021-07-07 18:01
陌路y
阅读(53)
评论(0)
推荐(0)
摘要:
接口 vs 类型别名 相同点 1. 都可以用来描述对象或函数 interface Point { x: number y: number } interface SetPoint { (x: number, y: number): void; } type Point = { x: number; 阅读全文
posted @ 2021-07-07 17:58
陌路y
阅读(164)
评论(0)
推荐(0)
摘要:
1.event.stopPropagation()方法 event.stopPropagation() 方法阻止事件冒泡到父元素,阻止任何父事件处理程序被执行。不让事件向documen上蔓延,但是默认事件任然会执行,当你掉用这个方法的时候,如果点击一个连接,这个连接仍然会被打开。 提示:请使用 ev 阅读全文
posted @ 2021-07-07 17:54
陌路y
阅读(384)
评论(0)
推荐(1)
摘要:
一、常规的js页面跳转代码 1、在原来的窗体中直接跳转用 <script type="text/JavaScript"> window.location.href="你所要跳转的页面";</script> 2、在新窗体中打开页面用: <script type="text/JavaScript"> w 阅读全文
posted @ 2021-07-07 17:52
陌路y
阅读(1224)
评论(0)
推荐(0)
浙公网安备 33010602011771号