上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 27 下一页
摘要: var postorderTraversal = function (root) { // 迭代,前序遍历是根左右,后序为左右根,将前序实现为根右左,再将数组反转即得后序遍历,左右根 // if (!root) { // return []; // } // let res = []; // let 阅读全文
posted @ 2022-08-29 15:37 蓓蕾心晴 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 递归要比迭代更耗时一些。 // 前序遍历:根左右 // 中序遍历:左根右 // 后序遍历:左右根 var preorderTraversal = function (root) { if (!root) { return []; } // 迭代 let res = []; let stack = [ 阅读全文
posted @ 2022-08-29 13:44 蓓蕾心晴 阅读(140) 评论(0) 推荐(0) 编辑
摘要: substr 和 substring 都为截取字符串部分字符 substr(start, length) , 第一个参数为起始位置,第二个参数为从起始位置开始截取的长度 第一个参数可为负数 substring(start,end),第一个参数和第二个参数分别为起始位置和结束位置,截取的字符串不包括结 阅读全文
posted @ 2022-08-28 22:43 蓓蕾心晴 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N))。斐波那契数列的定义如下: F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得 阅读全文
posted @ 2022-08-28 22:09 蓓蕾心晴 阅读(33) 评论(0) 推荐(0) 编辑
摘要: acorn内部的实现 https://zhuanlan.zhihu.com/p/149323563 编译原理之词法与语法 https://zhuanlan.zhihu.com/p/149793021 typescript编译原理 https://zhuanlan.zhihu.com/p/499859 阅读全文
posted @ 2022-08-26 16:53 蓓蕾心晴 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 看了一些编译原理的博文,对词法和语法的理解: 词法:是对一堆代码的一种提取,语法:是理解提取后的代码分别代表了什么意思,并赋予对应的意义,从而构建 AST 抽象语法树。 阅读全文
posted @ 2022-08-26 16:45 蓓蕾心晴 阅读(130) 评论(0) 推荐(0) 编辑
摘要: // keyBy function keyBy(list, by) { return list.reduce((acc, x) => { acc[by(x)] = x; return acc; }, {}); } console.log( keyBy( [ { id: 1, name: "beile 阅读全文
posted @ 2022-08-25 10:39 蓓蕾心晴 阅读(334) 评论(0) 推荐(0) 编辑
摘要: // 几个要素: // 1.维护一个 events 对象 // 2.对象上每个事件为 key,值为事件执行函数,为数组 // 3.维护三个方法: // 触发事件:emit,执行事件所绑定的方法(on绑定的) // 监听事件:on,哪里需要在监听到事件的时候执行一些动作,就在那里绑定,可能有多个待执行 阅读全文
posted @ 2022-08-24 13:42 蓓蕾心晴 阅读(225) 评论(0) 推荐(0) 编辑
摘要: // 无限累加 sum // 一共做两件事: // 1. 调用一次返回当前计算函数本身,该函数主要作用之一为合并多次调用传的不同数量的参数 // 2. 给返回的函数增加 valueOf 最终计算结果的方法 function sum(...args) { // 定义返回的闭包函数 const f = 阅读全文
posted @ 2022-08-24 01:07 蓓蕾心晴 阅读(196) 评论(0) 推荐(0) 编辑
摘要: // add 异步相加 function add(a, b) { return new Promise((resolve, reject) => { setTimeout(() => { resolve(a + b); }, 1000); }); } // 传入不定长度的数组,与 add 函数,对数 阅读全文
posted @ 2022-08-23 17:12 蓓蕾心晴 阅读(641) 评论(0) 推荐(0) 编辑
摘要: $1,$2是表示的匹配的小括号里的内容 $1是匹配的第一个小括号里的 ,$2是匹配的第2个小括号里的 // 将yyyy-mm-dd格式转换为年月日格式 function chDate1date(str){ var reg =/(\d{4})\-(\d{2})\-(\d{2})/; return st 阅读全文
posted @ 2022-08-22 18:09 蓓蕾心晴 阅读(1069) 评论(0) 推荐(0) 编辑
摘要: function once(fn) { let flag = false; let result = null; return function (...args) { if (flag) { return result; } flag = true; result = fn.call(this, 阅读全文
posted @ 2022-08-22 17:41 蓓蕾心晴 阅读(438) 评论(0) 推荐(0) 编辑
摘要: // arr:要查找的数组,predict:要查找的 key 字符串 或 [key,value] 数组,或 对象{key,value},fromIndex:要从数组中第一个元素开始查,默认为 0 function find(arr, predict, fromIndex = 0) { // 定义查找 阅读全文
posted @ 2022-08-22 17:13 蓓蕾心晴 阅读(756) 评论(0) 推荐(0) 编辑
摘要: // 自己实现function chunk(list, size) { let len = list.length; if (size < 1 || !len) { return []; } if (size > len) { return [list]; } // 最终返回数组 let res = 阅读全文
posted @ 2022-08-22 16:04 蓓蕾心晴 阅读(852) 评论(0) 推荐(0) 编辑
摘要: function isEqual(x, y) { // 如果全等则直接返回 true if (x y) { return true; } else if ( typeof x "object" && x !== null && typeof y "object" && y !== null ) { 阅读全文
posted @ 2022-08-22 11:08 蓓蕾心晴 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 两种实现方案实现原理:1. 如果传入的 function 为空,则直接返回 参数数组2. 如果传入的 function 只有一个,则直接调用第一个3. 否则从右向左依次执行4. 原理为:compose中传入多个函数,会依次从右向左执行,将右面函数的执行结果作为参数传入左边一个函数中 // 方式一 f 阅读全文
posted @ 2022-08-22 00:13 蓓蕾心晴 阅读(269) 评论(0) 推荐(0) 编辑
摘要: Object.create(),浅拷贝 const clone = Object.create( Object.getPrototypeOf(obj), Object.getOwnPropertyDescriptors(obj) ); Object.assign(targetObj,sourceOb 阅读全文
posted @ 2022-08-21 19:05 蓓蕾心晴 阅读(990) 评论(0) 推荐(0) 编辑
摘要: 参考链接:https://blog.csdn.net/lgno2/article/details/124996065 对象属性的可枚举和不可枚举 for in 循环只能遍历可枚举的,如果含有 Symbol ,则无法遍历,会报错 Uncaught TypeError: obj is not itera 阅读全文
posted @ 2022-08-19 19:17 蓓蕾心晴 阅读(49) 评论(0) 推荐(0) 编辑
摘要: reduce 方案 let myArray = ['a', 'b', 'a', 'b', 'c', 'e', 'e', 'c', 'd', 'd', 'd', 'd'] let myArrayWithNoDuplicates = myArray.reduce(function (previousVa 阅读全文
posted @ 2022-08-19 17:28 蓓蕾心晴 阅读(19) 评论(0) 推荐(0) 编辑
摘要: // 判断对象的方法 let obj6 = { a: 1, b: 2 }; // 1. typeof console.log(typeof obj6 "object"); // 2. instanceof console.log(obj6 instanceof Object true); // 3. 阅读全文
posted @ 2022-08-18 16:33 蓓蕾心晴 阅读(112) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 27 下一页