间隔打印 function repeat(func, times, wait){ return str =>{ let i = 0; while(i<times) { setTimeout(()=>{ func(str); 手写 手写系列
匹配闭合标签 //匹配闭合标签 function eg(chars) { let r = /\<.+?\>/g; let res = chars.match(r); let x = []; let rr = /\<\//; let reg1 = /([^<]+)$/; let reg2 = /([^/]+)$/; for 手写 手写系列
字符转数字 // 字符转数字,有限状态机 function atoi(str) { let state = 'start'; let sign = 1; let ans = 0; let statue = { 'start': ['start', 'signed' 算法 算法
判断回文 //判断是否回文 function huiwen(num){ let mun = 0; let temp = num; let n =1; if(num<0 || (num%10 == 0 && num!=0)) return false; while(mun<temp){ mu 算法 算法
排序算法 //插入排序 function insertSort(arr) { for (let i = 0; i < arr.length; i++) { //在前面已经排序好的位置里找到当前元素应该插入的位置 for (let j = 0; j < i; j++) { if (arr[i] <= arr[j]) { 算法 排序算法
请求池 问题有8个图片资源的url,已经存储在数组urls中。 urls类似于[‘https://image1.png', ‘https://image2.png', ….] 而且已经有一个函数function loadImg,输入一个url链接,返回一个Promise,该Promise在图片下载完成的时候resolve,下载失败则reject。 但有一个要求,任何时刻同时下载的链接数量不 手写 手写系列
http2/3 http2/3http1.1存在的问题,为什么要有http2 在http1.1中是支持持久连接的,多个请求可以复用一个tcp连接,同时管道pipelining可以让多个请求在一次tcp连接中发送,但是因为一个管道中一次只能处理一个请求,所以存在排队问题,如此就会造成阻塞问题。 因为http连接是无状态的,所以每次请求头的内容都要大而全,所以经常会出现很多重复传输,例如user agent,Cook http 计算机网络
位操作集合 取绝对值function abs(x){ return (x^(x>>31))-(x>>31) } 取下取整function ceil(x){ return x>>0 // x<<0 // ~x } function floor(x){ return (x+1)>>0 复习 位操作
迭代器和生成器 迭代器和生成器迭代器是什么? 在 javascript 中国呢,迭代器是一个对象。他定义了一个序列,并在终止时可能返回一个返回值。迭代器通过使用一个next()来实现可迭代协议,对象可以自定义他们自己的迭代行为,比如在一个 for..of 中哪些值可以被便利到,在现有的类型中 array、Map、WeakMap 和 String 都有默认的迭代行为,是一个内置可迭代对象。但是 复习 迭代器和生成器
vue组件通信 vue 组件通信 组件之间的作用域是独立的,但是我们很多时候都需要实现组件间的通信,父子双向通信,兄弟间通信,没有什么关系的组件间的通信。在组件通信方面总共有八种方法: props最简单的一种方式,通过 props 来实现父组件向子组件传值,子组件通过 props 属性来接受父组件的参数 //父组件 <child name='hello'> 复习 vue