avatar
文章
90
标签
16
分类
11

主页
博文
  • 分类
  • 标签
  • 归档
留言板
link
about
CJJJX's BLOG
搜索
主页
博文
  • 分类
  • 标签
  • 归档
留言板
link
about

CJJJX's BLOG

git命令大全
发表于2023-11-29|前端知识
git命令大全创建仓库命令 命令 说明 git init 初始化仓库,在当前目录新建一个Git代码库,基本上是创建一个具有objects,refs/head,refs/tags和模板文件的.git目录。 git clone[url] 拷贝一份远程仓库,也就是下载一个项目和它的整个代码历史。 配置 命令 说明 git config --list 显示当前的Git配置 git config -e [–global] 编辑Git配置文件。 git config [–global] user.name “[name]” git config [–global] user.email “[email address]” 设置提交代码时的用户信息 增加 / 删除文件 命令 说明 git add [file1] [file2] ... 添加指定文件到暂存区 git add [dir] 添加指定目录到暂存区,包括子目录 git add . 添加当前目录的所有文件到暂存区 git add -p 添加每个变化前,都会要求确认 对于同一 ...
osi和tcp模型
发表于2023-11-24|前端充电宝
iso/osi参考模型有七层,tcp/ip模型有四层,结构图如下 OSI参考模型1.物理层:负责传输比特流 使用的协议有:RS-232、V.35、Ethernet、Wi-Fi等, RS-232 是一种串行通信协议用于在计算机和外部设备之间传输数据. V.35是一种高速串行接口协议,用于连接计算机和网络设备。 Ethernet 是一种局域网协议,用于在计算机之间传输数据。 Wi-Fi 是一种无线局域网协议,用于在无线网络中传输数据 2.数据链路层:负责将比特流转换为帧 使用的协议有: PPP、HDLC、Ethernet、Wi-Fi等, PPP 是一种点对点协议用于在两个计算机之间建立连接。 HDLC 是-种高级数据链路控制协议,用于在计算机和网络设备之间传输数据。 Ethernet 和 Wi-Fi 也可以用于数据链路层通信 3.网络层:负责将顿转换为数据包, 使用的协议有: IP、ICMP、ARP、RIP、OSPF等 IP 是一种互联网协议,用于在不同的计算机之间传输数据。 ICMP 是一种互联网控制消息协议,用于在网络中传输控制信息。 ARP 是一种地址解析协议, ...
type和interface的区别
发表于2023-11-23|前端充电宝
在 TypeScript 中,type 和 interface 这两个概念比较容易混淆,它们都可以用来表示 接口,但是在实际使用上会存在一些差异。 一、基本概念1、type(类型别名) 用来给一个类型起新名字,使用 type 创建类型别名。类型别名不仅可以用来表示基本类型,还可以用来表示对象类型、联合类型、元组和交集。 1234567891011121314type userName = string; // 基本类型type userMsg = string | number; // 联合类型// 对象类型type Person = { name: userName; age: number;};// 使用Person类型let user: Person = { name: "leo", age: 18}; 2、interface(接口)接口是命名数据结构(例如对象)的另一种方式;与 type 不同,interface 仅限于描述对象类型。接口的声明语法也不同于类型别名的声明语法。如将上面 ...
防抖和节流
发表于2023-11-18|前端充电宝
防抖(Debounce)和节流(Throttle)是前端开发中最常用的优化处理方式,本文介绍防抖和节流的区别,应用场景,手撕代码,介绍相关可以直接在项目中使用的库。 区别简单的定义区分: 防抖是一段时间内,多次执行变为只执行最后一次。 节流是一段时间内,多次执行变为只执行第一次。 详细的定义区分: 防抖(debounce)是指在一段时间内多次触发相同事件时,只执行最后一次触发的事件。 这意味着,在一系列触发事件中,如果在指定的时间间隔内,发生了新的触发事件,那么前面的触发事件将被忽略,只有最后一次触发事件会被执行。 节流(throttle)是指在一段时间内多次触发相同事件时,只执行一次事件。 这意味着,无论触发事件发生多少次,在指定的时间间隔内只会执行第一次事件。 应用场景真实的项目中,在不同的场景下灵活切换使用防抖或节流,才会更加减少不必要的资源消耗,更加提高前端应用的性能和响应性。 防抖(Debounce)的应用场景: 搜索框输入:当用户在搜索框中输入内容时,可以使用防抖来延迟触发搜索请求。只有在用户停止输入一段时间后才会发送请求,避免频繁的请求发送。 窗口调整:当 ...
js实现数组去重方法总结
发表于2023-11-17|前端知识
方法一:双层循环,外层循环元素,内层循环时比较值 如果有相同的值则跳过,不相同则push进数组 方法二:利用splice直接在原数组进行操作双层循环,外层循环元素,内层循环时比较值 值相同时,则删去这个值 注意点:删除元素之后,需要将数组的长度也减1. 优点:简单易懂 缺点:占用内存高,速度慢 方法三:利用对象的属性不能相同的特点进行去重 方法四:数组递归去重运用递归的思想 先排序,然后从最后开始比较,遇到相同,则删除 方法五:利用indexOf以及forEach 方法六:利用ES6的setSet数据结构,它类似于数组,其成员的值都是唯一的。 利用Array.from将Set结构转换成数组 拓展运算符(…)内部使用for…of循环
CSR,SSR及同构渲染的区别
发表于2023-11-16|前端知识
SSR(传统服务端渲染)如:爱彼迎 传统的服务端渲染有:asp、jsp、ejs等,服务端语言往往通过这些模板引擎将数据和 DOM在服务端渲染完成,返回一个完整的静态 HTML页面给客户端,由客户端直接显示。 原理 客户端发送 HTTP请求 服务端响应 HTTP请求,返回拼接好的 HTML字符串给客户端 客户端渲染 HTML 缺点 前后端不分离,不好维护 用户体验不佳,需要重新加载页面 服务端压力大 CSR(客户端渲染)如:飞书 在现代化的前端项目中,客户端渲染的代表性技术栈是 Vue、React、Angular,我们常常使用它们来构建客户端单页或者多页应用程序。以 SPA构建程序为例,在浏览器端首先渲染的是一套空的 HTML,通过 JS直接进行页面的渲染和路由跳转等操作,所有的数据通过 Ajax请求从服务器获取后,在进行客户端的拼装和展示。 原理 客户端发起 HTTP请求 服务端响应 HTTP请求,返回一个空的 HTML文件 客户端初始化时加载必须的 JS文件,请求接口 将生成的 DOM插入到 HTML中 缺点 首屏加载慢 不利于SEO,需要等待所有的JS文件完成加载解析 同构 ...
JS数组api大全
发表于2023-11-15|前端知识
获取JavaScript数组原型上所有方法,可以在控制台输入console.log(Object.getOwnPropertyNames(Array.prototype)) pushpush方法接收任意数量的参数,会将它们添加到数组末尾,返回数组的最新长度。 12let arr = ['cat']arr.push('monkey', 'pig') unshiftunshift()在数组开头添加任意多个值,然后返回新的数组长度。 12let arr = ['cat']arr.unshift('monkey', 'pig') splice可以传入三个参数,分别是开始位置、要删除的元素数量、可选的需要插入的元素,该方法返回要删除的元素的数组,如果删除数量为 0 即返回空数组。 新增 在下标1的地方后面添加一个元素 12let arr = ['monkey', 'pig', 'cat']arr.splice( ...
利用ChatGpt生成前端页面
发表于2023-11-13|前端充电宝
在前端开发中,构建一个优秀的页面需要耗费大量的时间和精力。为了让开发者能够更加高效地构建页面,我们可以利用人工智能技术来生成页面代码。在学校开设的互联网程序设计课程中,老师布置了使用ChatGPT来生成一个简单的前端页面的作业,在此分享一些相关的代码和技巧。 一、ChatGPT是什么?ChatGPT是一种基于人工智能的自然语言生成模型,它可以生成高质量的文本内容。ChatGPT基于GPT-3算法,并通过大量的文本语料库训练得出。使用ChatGPT生成文本内容非常方便,您只需要输入一些关键词或者主题,就能够快速生成相关的文本内容。 二、使用ChatGPT生成前端页面2.1 生成HTML文件在此我们要生成一个电商的首页,可以通过ChatGPT的问答,让其直接帮助我们生成页面。下面给大家举个示例: 以下是ChatGPT生成的HTML代码 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263<!DOCTYP ...
js中的this指向
发表于2023-11-10|前端知识
JavaScript中的thisthis是JavaScript中一个特殊关键字,用于指代当前执行上下文中的对象。它的难以理解之处就是值不是固定的,是再函数被调用时根据调用场景动态确定的,主要根据函数的调用方式来决定this指向的对象。this 的值在函数被调用时动态确定,以下是几种常见的情况: 全局上下文中:当在全局作用域中调用函数时,this 指向全局对象。在浏览器环境中,这个全局对象是 window 对象。 1console.log(this); // 在浏览器中,输出为 Window 对象 函数作为对象的方法:当函数作为对象的方法被调用时,this 指向调用该方法的对象。 123456const obj = { property: 'value', printProperty: function() { console.log(this.property); }};obj.printProperty(); // 输出 'value' 构造函数中:在使用 new 关键字创建实例时,构造 ...
vite和webpack的区别
发表于2023-11-06|前端充电宝
** Vite和webpack的区别**Vite和webpack是两个常用的前端构建工具,它们在功能和使用方式上有一些区别。接下来我将详细介绍Vite和webpack的区别 构建方式Vite使用了一种新的构建方式,称为「原生ESM」构建。它利用浏览器原生支持ES模块的能力,通过将每个模块作为一个单独的文件进行构建,而不是像webpack那样将所有模块打包成一个文件。这种方式可以提供更快的冷启动和热更新速度。 webpack则是使用传统的「Bundler」构建方式,它将所有模块打包成一个或多个bundle文件,并使用代码分割和懒加载等技术来优化加载性能。 开发服务器Vite使用了一个基于ES模块的开发服务器,它利用浏览器原生支持ES模块的特性,可以在开发过程中实现快速的冷启动和热更新。Vite在启动开发服务器时,会根据需要动态地生成和提供每个模块的依赖关系,而不是像webpack那样提前构建好整个应用的依赖关系。 webpack也提供了一个开发服务器,但它是基于传统的构建方式,需要提前将所有模块打包成bundle文件,然后在浏览器中通过HTTP请求获取这些文件。 构建速度由于Vite利用 ...
1…567…9
avatar
CJJJX
Front-end/NWU/SE/2021
文章
90
标签
16
分类
11
Follow Me
公告
欢迎来到我的博客一起学习共同进步~
最新文章
npm引入依赖包时版本符号的探究记录2024-06-16
React是如何防xss的2024-06-08
React如何实现插槽2024-06-01
长短轮询和长短连接的区别2024-05-31
css选择器权重2024-05-11
分类
  • JS小案例2
  • css1
  • record1
  • ts1
  • vue小案例1
  • 八股文1
  • 前端充电宝22
  • 前端知识47
标签
安全 css vue ts 网络 手撕 前端知识 echarts notes 前端充电宝 八股文 工程化 js 自适应 项目 React
归档
  • 六月 20243
  • 五月 20243
  • 四月 20243
  • 三月 202413
  • 二月 202410
  • 一月 20247
  • 十二月 202310
  • 十一月 202312
©2023 - 2024 By CJJJX
框架 Hexo|主题 Butterfly
搜索
数据库加载中