• for/while/for in/ for of 循环速度测试

    作者:lithoge 创建时间:2022-07-08 15:01:37

    最近一直在学算法,发现循环的时候不同的循环方式有不一样的速度。 下面用遍历数组这种典型的情况测试各循环 for/while/for in/for of的速度差异。 for 循环 结果 Node 12ms,Chrome 22ms。 while 循环 结果 Node 12ms, Chrome 45ms,Chrome 下比 for 循环慢,但 Node 中都差不多。 for in 循环 结果 Node 6888ms, Chrome 8507ms,慢得令人发指。当然,他本来就不是为了遍历数组而生的,它的出现是为了遍历对象。 for of 循环 结果 Node 200ms,Chrome 250ms,比 for in 好太多了,但这种方法拿不到索引,实用性不强,这个方法在 Chrome 中测试差异比较大,测试时经常可以看到 50ms 左右的差异,也就是浮动在 25% 左右。 总结 结论 for > while > for of > for in。for/while 与其他循环的方法根本不在一个次元的产物。 最后也测试 forEach() 函数遍历的速度,结果是 Node 229m

    阅读全文
    63
    /
    0
    /
  • npm 下载时证书失效临时方案

    作者:lithoge 创建时间:2022-06-20 15:05:35

    Shell 中金庸 ssl 证书检查 Node 中禁用 ssl 证书检查

    阅读全文
    73
    /
    0
    /
  • 用 Node 实现 Java 的 RSA/ECB/OAEPWithSHA-256AndMGF1Padding 加密

    作者:lithoge 创建时间:2022-06-10 22:25:36

    node RSA RSA ECB OAEPWithSHA-256AndMGF1Padding java

    JavaScript 加密现状 目前 Java 加密的类和方法都相当成熟,但 Javascript 在加密解密方面还不是很成熟,可用的库有一些,但也不全面。 node-forge 加密库 发现一个叫 node-forge 的加密库非常全面,最重要他支持我要寻找的 RSA/ECB/OAEPWithSHA-256AndMGF1Padding 加密法,RSA/ECB/OAEPWithSHA-256AndMGF1Padding 是一种 RSA-OAEP 加密,并以 sha256 MGF1 sha1 进行填充的加密方法 RSA/ECB/OAEPWithSHA-256AndMGF1Padding 加密核心方法 分段加密

    阅读全文
    128
    /
    0
    /
  • 个人学习计划

    作者:lithoge 创建时间:2022-05-04 23:57:54

    未来 6 个月的学习计划 算法基础支持学习 ---- 进行中 Webpack loader 和 插件 的知识加固 ---- 待开始 Vite 插件的支持加固 ---- 待开始 Vue 源码 解析 ---- 待开始 微前端 应用 ---- 待开始

    阅读全文
    119
    /
    0
    /
  • 排列组合算法

    作者:lithoge 创建时间:2022-04-11 20:34:16

    忙活了一晚上,终于搞清楚了排列组合算法,记录一下。 排列算法 组合算法 排列组合一起计算

    阅读全文
    144
    /
    0
    /
  • TypeScript 常用方法

    作者:lithoge 创建时间:2022-03-07 19:06:32

    【匠店面试题】写出 Array.prototype.map 的类型声明 我当时没有能写出答案,面试结束后想出了下面的声明方案: 但我看 VSCODE 的 TS 提示的是这样的: 真的是要好好多学习,平时多留心才行,自己不努力没人能帮你,永远都抓不住机会(搞得自己 EMO 了)。 扩充原生类型 返回一个变量的类型 元组转联合类型

    阅读全文
    193
    /
    0
    /
  • git 常用操作

    作者:lithoge 创建时间:2022-02-17 19:34:43

    本地分支跟踪远程分支 远程分支合并到本地分支 合并不关联分支

    阅读全文
    151
    /
    0
    /
  • React 项目搭建过程(Vite + Typescript)

    作者:lithoge 创建时间:2022-01-26 12:07:19

    React Vite TypeScript

    前言 React 学习了好长一段时间了,这次是应该在实际开发的项目中巩固一下相关知识了。但目前工作中没有新的项目,有的话也是 Vue 项目,React 只能自己搭建一个自己玩了。 技术选型 初步定了用 Vite + Typescript 来编写,可能还会应用 Redux。其实个人认为可能不需要 Redux 做状态管理,这个东西的确非常臃肿。但考虑到学习的目的,所以还是用一用。UI 框架就用 Antd,其实也可能不需要用到,但也是学习的目的用一下。 开始搭建项目 TBD...

    阅读全文
    247
    /
    0
    /
  • React 知识点总结

    作者:lithoge 创建时间:2022-01-25 16:55:57

    前言 前段时间已经比较完整的借助 “尚硅谷” 的免费 React 教学视频,完整的学习了一次 React 技术栈的相关内容,下面是我自己重自己重温一下整个 React 学习中的一些知识点。 JSX 语法 JSX 语法是整个 React 的基础内容,学 React 一开始就得学习 JSX,JSX 是最基础的东西,但是其实内容也不多。 JSX 就是在 JS 的基础上增加了对 HTML 标签语法的支持 JSX 是用于生成虚拟 DOM 的,JSX 生成虚拟 DOM 需要 Babel 和 React 渲染函数的支持 组件 组件是一个 React 用于构建页面的基础单位,其中包含 JS/CSS/HTML 内容 组件名称必须是大写字母开头 有函数组件和类组件,类组件具备完备的 React 业务功能,函数组件本身不能有状态和生命周期函数(有 props),但后面我们会说到 Hooks,可以扩展函数组件的功能,使得函数组件开发模式也可以成功 React 开发的核心模式(其实目前已经成为主流了) 类组件的状态 设置 this.state 可以生成组件的状态 组件可以从父组件中接受参数 this.

    阅读全文
    363
    /
    0
    /
  • Vue 2.0 源码解读笔记

    作者:lithoge 创建时间:2022-01-11 19:17:15

    Vue

    概述 Vue 3.0 已经正式作为 Vue 默认版本了,Vue 2.0 估计也逐步要在前端开发的历史长河中慢慢退场。但作为一个前端开发的我,一直没有好好的研究一下 Vue 2.0 的原理,在这里补充一下这方面的知识,以便日后可以更好地理解 Vue 3.0。 本内容是阅读笔记,核心内容并非原创,皆是通过对网络上一些关于 Vue 文章的阅读,在此基础之上进行的个人理解和重点笔录。 Vue 初始化(_init) new Vue() 中包含着一个 Vue 初始化的过程,这个过程在 Vue.prototype._init 中编写。 过程大致如下: 初始化生命周期 初始化事件 初始化 render 调用 beforeCreate 钩子函数(所以这时获取不到 vm 的各种 data/props/computed/watch/methods 等等状态) 初始化 inject 初始化状态(data/props/computed/watch/methods 等) 初始化 provide 调用 created 钩子函数 执行 $mount 挂在操作 编译(compile) 分为 parse /op

    阅读全文
    250
    /
    0
    /
  • 1
  • 2
  • 3
  • 4