自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

NolanKy 的 技术博客

个人知识输出平台

  • 博客(124)
  • 资源 (4)
  • 收藏
  • 关注

原创 Element-UI的Select组件实现全选功能【nolankywu】

/</</</

2024-10-31 09:31:11 867 1

原创 git rebase 使用 - 【nolankywu】

git rebase是一个 Git 命令,用于将一个分支的修改重新应用到另一个分支上。它主要用于使提交历史更加清晰和线性。通过使用 rebase,可以把多个分支的改动整理成一个直线(线性)的历史,避免在 Git 历史中出现不必要的合并提交。以下是一个简单的例子来说明git rebase的用法:master和feature。master分支有两个提交,而feature分支基于master的第一个提交,并且增加了另外两个提交。这里,A和B是master分支上的提交,而C和D是feature分支上的提交。

2024-10-31 09:29:54 809

原创 15. 三数之和

给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i!= k ,同时还满足 nums[i] + nums[j] + nums[k] == 0。不同的三元组是 [-1,0,1] 和 [-1,-1,2]。输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]输入:nums = [0,1,1]输入:nums = [0,0,0]解释:唯一可能的三元组和为 0。输出:[[0,0,0]]

2024-06-16 10:33:09 355

原创 js 数组有哪些方法

JavaScript 数组提供了许多内置方法来操作和处理数组。

2024-06-16 09:12:29 1092 1

原创 深入浅出 Babel:现代 JavaScript 的编译器

Babel 是一个 JavaScript 编译器,主要用于将现代 JavaScript 代码(ES6+)转换为向后兼容的 JavaScript 代码,以便在旧版本的浏览器或环境中运行。Babel 还支持转换 JSX 语法(用于 React)和 TypeScript。// Babel 接收到的输入是: ES2015 箭头函数// Babel 输出: ES5 语法实现的同等功能});为什么需要 Babel?向后兼容性。

2024-06-15 10:25:41 1867

原创 在 macOS 上安装 Docker

Docker Desktop 会定期发布更新。你可以通过点击菜单栏中的 Docker 图标,选择“Check for Updates”来检查并安装最新版本。确保你的 macOS 版本符合 Docker 的系统要求。Docker Desktop for Mac 需要 macOS 10.15 或更高版本。

2024-06-13 08:25:55 1864

原创 算法刷题 322. 零钱兑换

使用amount + 1的数组长度是为了确保我们能够存储从 0 到amount的所有子问题的解,从而能够正确地解决整个问题。

2024-06-07 09:20:15 1058

原创 深入浅出服务发现:构建动态微服务架构的基石

简单来说,服务发现就是让软件系统中的各个部分能够相互“认识”和“交流”的过程。在现代的软件架构中,我们经常使用微服务架构,这意味着一个大的应用程序被拆分成了许多小的、独立的服务。这些服务可能分布在不同的服务器上,甚至不同的地理位置。服务发现就是帮助这些服务找到对方,以便它们能够协同工作。

2024-06-06 11:31:18 440

原创 inquirer.js 构建交互式命令行工具,全网详细 inquirer.js中文教程

Inquirer 是一个流行的 Node.js 库,用于构建交互式命令行界面。它提供了一个简单而强大的 API,使得创建用户友好的交互变得容易。可以看作是一款强大的命令行交互式问答库。

2024-06-04 08:48:55 1757

原创 深入浅出fs-extra:Node.js文件操作的瑞士军刀

在Node.js的世界里,文件操作是日常开发不可或缺的一部分。虽然Node.js内置的fs(文件系统)模块提供了基本的文件读写能力,但在实际开发中,我们往往需要更多的功能和更简洁的API。这时候,fs-extra包就像是一把瑞士军刀,为我们提供了强大而便捷的文件操作工具。

2024-06-04 08:47:45 1813

原创 commander.js 入门指南:构建强大的命令行界面 (全网最全教程)

Commander.js 提供了许多方法来帮助你构建功能丰富的命令行应用。在本文中,我们学习了如何使用 Commander.js 创建一个简单的命令行应用。我们通过一个实际的例子介绍了如何定义和处理命令行参数。当然,Commander.js 还有许多其他功能,如子命令、自定义帮助信息等,你可以在Commander.js 官方文档中找到更多信息。

2024-06-04 08:46:22 2221

原创 轻松管理 Node.js 版本和 NPM 源:一文了解 nvm 和 nrm 的使用

nvm(Node Version Manager)是一个用于管理 Node.js 版本的工具,它被设计成每个用户独立安装,并在每个终端会话中调用。nvm 可以在任何符合 POSIX 标准的 shell(如 sh、dash、ksh、zsh、bash)上运行,特别适用于以下平台:Unix、macOS 和 Windows 的 WSL(Windows Subsystem for Linux)。nvm 的主要功能是允许用户轻松切换不同版本的 Node.js,并在不同的项目中使用不同的 Node.js 版本。

2024-05-16 08:18:08 942

原创 使用React.createContext()在React应用中传递数据,nolan出品

是React中的一个API,用于创建一个“上下文”,这是一种在组件树中传递数据的方法,而无需手动将props逐级传递。这个方法接受一个参数,即默认值,当组件在树中上层没有找到对应的Provider时,就会使用这个默认值。Provider和Consumer。Provider组件接受一个名为value的prop,你可以将任何数据类型的值传递给它。这个值将会被Provider的所有后代Consumer组件所消费。Consumer。

2024-05-15 07:47:45 703

原创 React 状态管理库深度对比:在做技术选型的时候如何选择合适的状态库,nolan出品

在状态共享这方面,不像VuexReact的官方并没有强力推荐某种封装方案,所以React的状态管理工具五花八门,百花齐放,做什么都要dispatch的reduxdva、新星代表zustand响应式流派mobx。以及新星代表valtio,以及一个很有特点的库resso原子状态流派。来自facebook开源的recoil,以及新星代表jotai完全体hooks流派。hoxretoumijs@4 内置数据流,包括Vue官方推荐的新状态管理工具pinia也是这个流派。

2024-05-15 07:45:37 2204

原创 深入理解 npm、cnpm、npx、yarn 和 pnpm:JavaScript 包管理器的对比

CommonJS主要用于服务器端,同步加载模块,适用于Node.js。它的优势在于简单易用,但在浏览器端可能导致页面阻塞。AMD主要用于浏览器端,异步加载模块,避免页面阻塞。它的优势在于适用于大型Web应用程序,但语法相对繁琐。ES模块化是最新的模块化标准,适用于服务器端和浏览器端,具有更好的语法和功能。它的优势在于静态加载、编译时检查和更简洁的语法,但需要浏览器或运行时的支持。在实际项目中,可以根据具体需求和场景选择合适的模块化规范。例如,对于Node.js项目,可以使用CommonJS;

2024-05-15 07:43:34 1272

原创 JavaScript模块化:CommonJS、AMD与ES模块化

CommonJS主要用于服务器端,同步加载模块,适用于Node.js。它的优势在于简单易用,但在浏览器端可能导致页面阻塞。AMD主要用于浏览器端,异步加载模块,避免页面阻塞。它的优势在于适用于大型Web应用程序,但语法相对繁琐。ES模块化是最新的模块化标准,适用于服务器端和浏览器端,具有更好的语法和功能。它的优势在于静态加载、编译时检查和更简洁的语法,但需要浏览器或运行时的支持。在实际项目中,可以根据具体需求和场景选择合适的模块化规范。例如,对于Node.js项目,可以使用CommonJS;

2024-04-15 09:31:08 1343

原创 npm install 的不同选项:--save、--save-dev、-S、-D 的区别

Node.js 的包管理器 npm 提供了一个命令,用于安装 Node.js 项目所需的依赖包。在使用这个命令时,我们可以通过添加不同的选项来控制依赖包的安装方式。--save--save-dev-S和-D的区别。

2024-04-13 09:57:43 1995

原创 掌握 Conventional Commits 规范:提升项目版本控制的清晰度与自动化

是一种约定,它定义了一种特定的 commit 信息格式,使得自动化工具能够理解并据此执行各种任务,如自动生成变更日志、决定版本号的升级策略等。这种规范基于semver(语义化版本控制)原则,将 commit 信息分为不同的类型,并允许添加可选的脚本来描述更改的性质。它是一种基于提交消息的轻量级公约,旨在创建清晰、可读的提交历史记录。通过遵循这一规范,我们可以更容易地编写基于规格的自动化工具,例如自动生成版本号和更新日志。这个规范起源于 Angular 项目的提交准则,并逐渐被许多其他项目和组织所采用。

2024-04-13 09:57:06 1227

原创 如何管理NPM 包版本号?使用standard-version进行版本控制和发布(全网最全教程)nolan出版

standard-version还允许你在各个步骤前后运行自定义脚本。例如,在版本号更新前后,或者在git提交前后。你可以在中添加prebumppostbumpprecommitpostcommitstandard-version是一个强大而灵活的工具,能够让版本控制和发布变得更简单,更规范,也更易于跟踪和理解。无论你是个人开发者,还是团队开发者,我都强烈推荐你试试看。

2024-04-13 09:55:45 3736

原创 “掌握高效团队协作的秘诀:企业项目中的Git规范实践指南“

在当今快速发展的软件行业中,团队协作和项目管理变得越来越重要。而作为一种分布式版本控制系统,Git已经成为了开发者们的必备工具。在企业项目中,如何有效地运用Git来提升团队协作效率和项目管理水平呢?本文将为您揭示高效团队协作的秘诀,详细介绍企业项目中的Git规范实践指南,助您轻松掌握项目管理的诀窍。无论您是企业管理者、项目负责人还是开发者,都可以从本文中受益匪浅。让我们一起探索如何运用Git规范来提升企业项目的管理水平,实现高效团队协作。

2023-11-27 19:53:22 557

原创 “前端开发必备:掌握这些知识,让你的技能瞬间升级!“

第一优先级,浏览器相关知识, BOM, DOM,相关API, javascript的原生api(很多, 相对重要)第二优先级网络知识(私有协议入(CGW), 服务发现),后端相关知识与容器化技术,这个因为工作中有用到第三优先级,基本功部分,数据结构, 算法,硬件知识。

2023-11-27 19:52:19 716

原创 React diff的原理是什么

对于同一层级的节点,React 会用唯一的 key 来标识,提供了三种操作:插入、移动和删除。可以准确地发现新旧集合中的节点都是相同的节点,因此无需进行节点删除和创建,只需要将旧集合中节点的位置进行移动,更新为新集合中节点的位置。发现新树中,R节点下没有了A,那么直接删除A,在D节点下创建A以及下属节点,上述操作中,只有删除和创建操作。React 只会对相同层级的节点进行比较,如果节点跨层级移动,会直接删除旧节点,创建新节点。运算,如果不是一个类的组件,那么直接删除这个组件下的所有子节点,创建新的。

2023-06-10 11:13:04 1126

原创 【小番茄夫斯基】快速掌握Express框架—从基本概念到实践应用

Express是目前最流行的基于Node.js的Web开发框架,可以快速地搭建一个完整功能的网站。

2023-02-09 19:23:41 467

原创 【小番茄夫斯基】Pinia状态管理

Pinia是尤雨溪强烈推荐的一款Vue状态管理工具,也被认为是下一代Vuex的替代产品。即Vuex5.x,在Vue3.0的项目中使用也是备受推崇。

2023-02-02 16:17:12 617

原创 【小番茄夫斯基】全网最全前端面试手撕算法题,原理手写汇总

全网最全前端面试手撕算法题,原理手写汇总

2023-02-02 16:12:53 1267

原创 在查阅大量资料之后,我整理出了http 1.0/1.1/2/3 各个版本的知识要点和http已经https的原理剖析

HTTP的特性是明文传输,因此在传输的每一个环节,数据都有可能被第三方窃取或者篡改,具体来说,HTTP数据经过TCP层,然后经过WIFI路由器、运营商和目标服务器,这些环节中都可能被中间人拿到数据并进行篡改,也就是我们常说的中间人攻击。其原理是在HTTP和TCP之间建立了一个中间层,当HTTP和TCP通信时并不是像以前那样直接通信,直接经过了一个中间层(TLS、SSL)进行加密,将加密后的数据包传给TCP,响应的,TCP必须将数据包解密,才能传给上面的HTTP。...

2022-07-26 09:35:33 434

原创 大前端知识图谱+B站视频整合

文章目录前端学习路径B站视频整合网络知识超文本标记语言层叠样式表浏览器脚本语言[https://www.bilibili.com/video/BV1Sy4y1C7ha](https://www.bilibili.com/video/BV1Sy4y1C7ha)版本控制管理系统网络安全相关知识包管理工具CSS 预处理 语言构建工具三大前端框架React.jsVue.jsCSS 相关框架JavaScript 语法糖服务端渲染React.jsVue.js静态站点生成器移动App开发Uni-App美团外卖:[http

2022-05-03 17:48:31 1717 1

原创 原生js 实现 apply, call , bind 进行this的绑定

apply// 实现Function.prototype.myApply = function(context=globalThis,...args){ let key = Symbol('key'); context[key] = this; let result = context[key](args); delete context[key]; return result;}function f(a,b){ console.log(a+b) console.

2022-04-18 22:56:09 211

原创 js手写算法原理 , 深拷贝函数, 拍平数组 , 数组去重 , 手写new , 实现 myInstanceOf , 柯里化函数

js实现算法原理

2022-04-18 22:53:57 426

原创 leetcode 回溯法例题,组合总和

leetcode刷题日记,回溯法

2022-04-18 22:14:24 345

原创 一道有趣的leetcode算法题【验证回文串】多种方式解答,了解回文类题目的解题思路

原题 leetcode 125题我的解题是/** * @param {string} s * @return {boolean} */var isPalindrome = function(s) { let str = s.toLowerCase(); let newStr = '' for(let i=0;i<=str.length;i++){ if(str.charCodeAt(i)>=97 && str.charCod

2022-03-28 20:02:07 2315

原创 大二项目实战:使用flutter开发的学生端app【云山印尼语学习辅助平台】

项目介绍云山印尼语 Study(简称“云印”)是一款主要面向学习印尼语的高校学生 和印尼语教师以及其他印尼语学习者的辅助学习平台。“云印”功能丰富,满 足学生、教师两种角色的不同需求,为学生提供从单词记忆、基础课程学习、 搜索翻译到课外文章阅读、视频拓展的逐步深入的系统性语言学习辅助功能, 并且为学生设计了具有趣味性的“每日单词打卡”和“每日一句”系列,促进 学生养成持续的学习习惯。为教师提供课程管理、教学资料上传等针对性教学 功能,并为教师和学生搭建实时的交流互动平台,弥补现今印尼语教育的市场 缺口

2022-03-09 11:15:01 2511 1

原创 vue3中的组件通信【2】《爷孙组件通信》

文章目录爷孙组件通信provide / inject响应性数据的传递与接收爷孙组件通信顾名思义,爷孙组件是比 父子组件通信 要更深层次的引用关系(也有称之为 “隔代组件”):Grandfather.vue└─Son.vue └─Grandson.vue方案因为上下级的关系的一致性,爷孙组件通信的方案也适用于 父子组件通信 ,只需要把爷孙关系换成父子关系即可。provide / injectGrandfather.vue 有一个 provide 选项来提供数据,Grandson.v

2022-02-25 16:03:15 6185 1

原创 vue3中的组件通信【1】《父子组件通信》

文章目录父子组件通信(1)props / emits①props使用props获取非 Prop 的 Attributeemits(子传父)(2)v-model / emits(3)ref / emits父子组件通信(1)props / emits①propsFather.vue<template> <Child title="用户信息" :index="1" :uid="userInfo.id" :user-name="userInfo.na

2022-02-25 15:46:21 3843

原创 【flutter】dart中future的使用

文章目录背景Future.thenFuture.catchErrorFuture.whenCompleteFuture.waitFuture.delayedonErrorFutere背景编程中的代码执行,通常分为同步与异步两种。简单说,同步就是按照代码的编写顺序,从上到下依次执行,这也是最简单的我们最常接触的一种形式。但是同步代码的缺点也显而易见,如果其中某一行或几行代码非常耗时,那么就会阻塞,使得后面的代码不能被立刻执行。异步的出现正是为了解决这种问题,它可以使某部分耗时代码不在当前这条执行线路上立

2022-02-06 14:07:09 3358

原创 【flutter】json的序列化和反序列化,在模型类中序列化json

一,序列化 JSON1、使用 dart:convert 手动序列化 JSON2、模型类中序列化 JSON小项目中使用 dart:convert 手动序列化 JSON 非常好,也非常快速。但是随着项目的增大, dart:convert 手动序列化 JSON 的话失去了大部分静态类型语言特性:类型安全、自动补全和 最重要的编译时异常。这样一来,我们的代码可能会变得非常容易出错。当我们访问 name 或 email 字段时,我们输入的很快,导致字段名打错了。但由于这个 JSON 在 map 结构中,所

2022-02-06 12:31:38 2314

原创 在 Vue 3 和 Vite 安装 Tailwind CSS

安装npm install -D tailwindcss@latest postcss@latest autoprefixer@lates创建您的配置文件接下来,生成您的 tailwind.config.js 和 postcss.config.js 文件:npx tailwindcss init -p这将会在您的项目根目录创建一个最小化的 tailwind.config.js 文件:// tailwind.config.jsmodule.exports = { purge: [],

2022-01-12 16:12:39 1172

原创 Mock.js(生成虚假数据)使用及在vue+vite+ts中集成mock.js

文章目录介绍使用①下载②引入③Mock.js的规范Mock.mock()Mock.Random在Vue项目中使用Mock.js介绍mock.js 官网:http://mockjs.com/目前的大部分公司的项目都是采用的前后端分离, 后端接口的开发和前端人员是同时进行的. 那么这个时候就会存在一个问题, 在页面需要使用大量数据进行渲染生成前, 后端开发人员的接口也许并没有写完, 作为前端的我们也就没有办法获取数据. 所以 前端工程师就需要自己按照接口文档模拟后端人员提供的数据, 以此进行页面的开发.

2022-01-12 14:25:10 3258

原创 vue中的一个简单好用的标题组件

封装代码<template> <div class="title-bar">{{ title }}</div></template><script lang="ts">export default { name: 'TitleBar', props: { title: { type: String, default: '' } }}</script><sty

2022-01-02 16:52:27 1182

原创 页面载入进度条 nprogress的使用

介绍页面路由切换时,附带一个加载进度条会显得非常友好,不至于白屏时间过长,让用户以为页面假死。这时候我们可以用到 nprogress[108],在路由切换时开启和关闭:安装npmnpm install --save nprogresyarnyarn add nprogress使用直接调用 start()或者done()来控制进度条。可以使用inc()随机增长进度条,注意,这个方法永远不会让进度条达到100%。NProgress.inc()通过使用done()让进度条关闭。NP

2021-12-30 16:27:30 760

操作系统实践笔记.pdf

linux操作系统实践的命令详解

2021-06-28

NetworkApp-master.rar

2022-01-05

数据挖掘大作业_《银行客户流失分析》.pdf

数据挖掘大作业文档,对银行客户流失进行分析,随着互联⽹⾦融的异军突起,银⾏业的竞争愈加激烈,防⽌客户流失和挽留⽼客户成为各⼤银⾏ 关⼼的重要问题。本⽂⾸先根据已有数据集对各特征进⾏描述性统计分析,初步了解数据;之后 进⾏数据预处理,包括数据清洗,数据变换、特征选择;再后⽤逻辑回归、⽀持向量、朴素⻉叶 斯、决策树、随机森林等算法进⾏建模,通过不同性能度量,选出为表现最好的模型并进⾏调 参;最后,根据描述性统计和特征重要性为银⾏挽留客户提出建议。

2021-06-19

软件工程综合实践报告.pdf

用Javafx做的一个学生成绩管理系统,是软件工程《学期综合实践》课程的一个大作业

2021-06-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除