自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(214)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 黑马程序员TypeScript学习笔记—索引签名、映射类型等

这篇文章摘要总结了TypeScript中的关键类型系统特性,包括索引签名、映射类型、泛型工具类型Partial的实现分析,以及索引查询类型的使用方法。同时介绍了TS的类型声明文件(.d.ts),说明了其只包含类型声明而不含可执行代码的特性。文章还讲解了如何利用内置和第三方类型声明文件,并通过package.json加载声明文件的方法。最后,提供了创建自定义类型声明文件的指导,包括项目内共享类型和为已有JS文件添加类型声明的基本概念。这些内容涵盖了TypeScript类型系统的核心功能和声明文件的应用场景。

2025-06-03 14:48:34 139

原创 黑马程序员TypeScript学习笔记—泛型篇

Type可以表示任意类型,这样导致有的类型的一些属性无法正常使用。字符串就像数组一样,也可以通过索引的方式来访问。数值没有属性,但它对应的包装类型有属性。

2025-06-03 14:42:49 148

原创 黑马程序员TypeScript课程笔记—类型兼容性篇

本文介绍了类型兼容性的相关概念,主要包括对象、接口和函数之间的类型兼容性规则。其中,函数参数个数和对象兼容性相反,而函数参数类型和返回值的兼容性也有特殊规则。此外,还解释了回调函数的概念,比较了let、const、var的区别,以及交叉类型如何将多个类型合并为一个类型,并对交叉类型与接口进行了对比说明。这些内容为理解TypeScript的类型系统提供了基础指导。

2025-06-03 14:32:25 579

原创 TypeScript中class的两种继承方式extends和implements的对比

TypeScript中extends和implements的核心区别:extends用于类继承,支持单继承,子类获得父类的实现;implements用于接口实现,支持多实现,仅约束方法签名。extends强调"is-a"关系,实现代码复用;implements强调"can-do"关系,确保契约一致性。两者可结合使用,extends更适合纵向扩展,implements更适合多态和横向约束。正确选择取决于需求:复用代码用extends,定义契约用implements,需要

2025-06-03 14:20:07 584

原创 黑马程序员TypeScript课程笔记—class篇

本文介绍了class的基本使用方法。主要内容包括:构造函数的正确用法(无需指定返回值类型);实例方法的定义;两种继承方式(extends和implements);三种可见性修饰符(public、protected、private)的应用;readonly修饰符的使用;以及属性类型标注的注意事项(无论是否有默认值都应指定类型)。这些要点涵盖了class的核心语法特性,有助于正确使用类进行面向对象编程。

2025-06-03 14:10:55 436

原创 TypeScript 中的字面量类型(Literal Types)

在 TypeScript 中,(如特定的字符串、数字或布尔值),而不仅仅是宽泛的类型(如stringnumber字面量类型通常与联合类型(Union Types)结合使用,用于创建更精确的类型约束。

2025-06-03 13:58:59 260

原创 黑马程序员TypeScript课程笔记3

而且type有= interface(接口)没有=如果声明变量没有初始化值的时候,需要写类型,因为这时候没法推论出来类型如果函数的参数类型没有写,也没法推断出返回值的类型点击打开网址。在网页的控制台中输入console.dir($0),之后往下拉,可以看到 alink具体指的是什么字面量类型一般和联合类型一起使用

2025-06-03 13:52:14 245

原创 黑马程序员TypeScript课程笔记2(11-20)

数组类型可以写为"let numbers:number[]=[1,2,3] ,也可以写为let numbers:Array=[1,2,3]:string}) //函数的参数可以是对象类型的。联合类型的写法 let arr:(number|string)[]=[1,'a',2,'g']如果指定了函数参数的类型,调用的时候必须要传入参数,否则会报错。如果指定了函数返回值的类型,必须要有函数返回值。上图分别为函数声明的方式和函数表达式的方式。TS中对象类型的属性通过;JS中对象类型的属性通过,分隔。

2025-06-03 13:24:56 382

原创 黑马程序员TypeScript课程笔记1(1-10)

TypeScript(简称:TS)是JavaScript的超集(JS有的TS都有)TypeScript=Type+JavaScript(在JS基础上,为JS添加了类型支持)TS有明确的类型 let age1:number=18JS没有明确的类型 let age2=18TS 和JS都可以在浏览器和NodeJS中运行1.一类是JS已有的类型原始类型(基础类型):number String boolean null undefined symbol。

2025-06-03 12:17:15 323

原创 vedio.ontimeupdate()和video.onloadeddata()

JavaScript视频事件处理摘要 video.onloadeddata 事件在视频第一帧加载完成后触发,适合初始化播放器、显示封面或获取视频基础信息。它早于oncanplay事件,但晚于onloadedmetadata(仅元数据加载)。使用时建议优先采用addEventListener替代直接赋值,防止事件覆盖。 video.ontimeupdate 事件在视频播放位置变化时持续触发(每秒4-60次),主要用于进度条同步、字幕显示和观看记录。与seeked事件(仅手动跳转触发)不同,它适用于实时进度跟踪

2025-05-31 16:58:29 999

原创 黑马程序员Pink的javaScript课程js进阶day4

这篇文章简要介绍了JavaScript中的关键概念,包括:浅拷贝和深拷贝的实现方法(Object.assign、递归、JSON.stringify等);异常处理(throw/try-catch);this的指向规则(普通函数与箭头函数);改变this指向的方法(call/apply/bind);以及防抖和节流的概念、实现和应用场景。文章还提到了一些实用工具如lodash库中的_.debounce和_.throttle函数。这些知识涵盖了JavaScript开发中的重要技术点,对理解函数执行、数据操作和性能优

2025-05-31 16:48:09 162

原创 黑马程序员Pink的javaScript课程js进阶day3

本文探讨了面向对象与面向过程编程的差异,重点分析了构造函数的内存浪费问题及原型对象的解决方案。内容涵盖:1)两种编程范式特点对比;2)构造函数封装导致的内存浪费问题;3)prototype原型对象的内存优化机制;4)数组扩展案例实践;5)constructor属性和__proto__对象原型;6)原型继承与原型链机制;7)instanceof运算符;8)通过模态框案例展示构造函数写法和open/close方法封装。全文系统性地讲解了JavaScript面向对象编程的核心概念与实践应用。

2025-05-31 15:02:44 161

原创 黑马程序员Pink的javaScript课程js进阶day2

JavaScript对象与数组操作全解析 本文系统介绍了JavaScript中对象与数组的核心操作方法。主要内容包括:1)对象的三种创建方式(字面量、new Object()、构造函数);2)构造函数的使用与实例化过程;3)实例成员与静态成员的区别;4)内置构造函数(Object、Array等)的用法,重点讲解了Object.keys/values/assign等静态方法;5)数组的高阶方法如reduce、find、every以及伪数组转换;6)字符串常用方法如substr、includes等;7)结合购物

2025-05-31 13:02:55 251

原创 黑马程序员Pink的javaScript课程js进阶day1

本文摘要:JavaScript核心概念包括作用域(局部/全局)、作用域链、垃圾回收机制(引用计数/标记清除)及闭包应用;变量/函数提升特性;ES6新增的剩余参数、展开运算符和箭头函数语法;数组/对象解构技巧;数组遍历方法forEach;最后通过商品筛选案例综合应用上述知识点。文中特别指出闭包可能导致内存泄漏,var存在变量提升而const/let不存在等细节要点。

2025-05-29 21:39:02 134

原创 offset 家族和 client 家族

摘要:前端开发中,offset家族和client家族是获取元素尺寸与位置的关键属性。offset家族包含offsetWidth/Height(总尺寸含边框)、offsetLeft/Top(相对定位父元素偏移)和offsetParent(定位参考);client家族包含clientWidth/Height(可视尺寸不含边框)、clientLeft/Top(边框宽度)和clientX/Y(鼠标视口坐标)。两者分别适用于计算元素占用空间和内部可用区域,需注意滚动条影响、动态更新及盒模型差异。典型应用包括拖拽定位、

2025-05-29 12:53:27 595

原创 黑马程序员Pink的javaScript课程APIday7放大镜功能的实现

小兔鲜购物商城的放大镜功能的实现。

2025-05-29 11:13:09 194

原创 黑马程序员Pink的javaScript课程APIday6

正则表达式是用于字符串匹配的强大工具,主要包括test()和exec()方法。核心要素包含元字符(边界符^$、量词、字符类)、预定义类以及修饰符(i/g)和替换函数replace()。实际应用案例包括验证码发送、用户信息验证(用户名、手机号、密码匹配)以及表单提交等功能模块的开发,这些正则模式可直接复用。完整项目通常涵盖登录页、首页等界面的正则验证实现。

2025-05-28 23:02:42 105

原创 黑马程序员pink的javaScript课程APIday5

摘要:本文介绍了前端开发中的DOM(文档对象模型)和BOM(浏览器对象模型)的核心概念及区别。DOM用于操作HTML/XML文档内容(如元素修改),以document对象为核心;BOM用于浏览器交互(如页面跳转),以window对象为核心。DOM由W3C标准化,而BOM无统一规范。同时讲解了定时器(setTimeout)、事件循环、location/navigator/history对象操作,以及本地存储(localStorage/sessionStorage)的使用方法,包括复杂数据转换(JSON)和案例

2025-05-28 22:51:49 1071

原创 DOM和BOM的区别

特性DOMBOM核心对象documentwindow作用操作文档内容、结构和样式操作浏览器窗口和环境标准化W3C 标准无统一标准示例方法alert()理解两者差异有助于更高效地开发前端应用:使用 DOM 操作文档内容,使用 BOM 处理浏览器窗口交互。

2025-05-28 16:46:20 465

原创 黑马程序员Pink的javaScript课程APIday4

本文摘要:介绍了JavaScript中日期对象的实例化方法(有参/无参)及三种获取时间戳的方式。讲解了DOM节点操作,包括节点查找(父、子、兄弟节点)、增加/克隆/删除节点的方法。详细说明了移动端touch事件和Swiper插件的使用,包括自动播放和小圆点配置。最后提及学成在线案例中表单验证和取消默认跳转的实现。

2025-05-28 15:41:42 706

原创 黑马程序员Pink的javaScript课程APIday3

本文摘要:文章介绍了前端事件处理的关键技术点。包括表单全选/反选实现、事件流机制(捕获与冒泡)及其阻止方法、事件解绑方式(L0与L2级别)、mouseover与mouseenter区别、事件委托原理及优势。还涵盖阻止默认行为、页面加载/滚动事件处理、client/offset家族属性区别,以及京东/B站滑动导航等实战案例。重点对比了L0和L2级别事件注册在覆盖性、执行阶段和解绑方法上的差异,并强调事件委托通过冒泡机制提升性能的优势。最后通过电梯导航案例综合应用这些技术。

2025-05-28 13:16:00 764

原创 黑马程序员Pink的javaScript课程APIday2

本文摘要:本文系统讲解了事件监听的核心知识点与应用场景。主要内容包括:事件监听的三要素(触发对象、方式、操作)及语法;常见事件类型如鼠标、焦点、键盘事件的使用;事件对象属性获取光标位置的方法;通过案例(随机点名、轮播图、评论发布)演示事件监听的实际应用;对比on和addEventListener两种绑定方式的区别;介绍了环境对象this和回调函数的概念。重点强调了addEventListener的优势及事件对象在交互开发中的重要作用,为前端事件处理提供了完整的技术指导。

2025-05-27 23:15:43 539

原创 黑马程序员Pink的javaScript课程APIday1

14.轮播图定时版。

2025-05-27 22:27:53 335

原创 javascript:void(0) 是一个常见的 JavaScript 伪协议

是一个常见的 JavaScript 伪协议,下面从几个方面详细解释其含义和用途。

2025-05-06 22:04:15 791

原创 WEB前端小练习——记事本

web前端小项目,用html,css,javaScript,vue语言实现,可以实现新增笔记,查询笔记,修改笔记,删除单条笔记,批量删除笔记,清空笔记本,统计页面笔记数目的功能 具有登录注册功能

2025-05-03 22:03:55 382

原创 Axios 是一个基于 Promise 的 HTTP 客户端,可用于浏览器和 Node.js 环境。以下是它的一些主要作用

Axios 是一个基于 Promise 的 HTTP 客户端,可用于浏览器和 Node.js 环境。

2025-04-23 08:55:28 512

原创 substring() 和 slice() 这两个方法的相同与不同

在 JavaScript 里,和slice()这两个方法都用于从字符串里提取子字符串,它们的功能有相似之处,但也存在一些差别。

2025-04-02 16:36:21 323

原创 javaScript判断一个对象是否为空

在判断对象是否为空时,使用for...in循环和使用Object.keys()方法有什么区别?是一种简洁但可能性能稍差的方法,因为它涉及到对象的序列化和字符串比较。选择使用哪种方法取决于具体的需求。如果只关心可枚举属性,除了上述方法,还有其他方法可以判断对象是否为空吗?如果需要考虑不可枚举属性,如何判断一个对象是否包含特定的属性?

2025-01-18 11:39:18 273

原创 javaScript如何实现字符串的反转

方法进行反转,然后再将反转后的数组元素组合成一个字符串。通过这种方式,可以方便地实现字符串的反转操作,而无需依赖字符串本身的。方法,因为 JavaScript 中的字符串对象没有提供这个方法。在 JavaScript 中,字符串本身没有。不过,可以将字符串先转换为数组,利用数组的。

2025-01-04 15:23:57 358

原创 javaScript中slice()和splice()的用法与区别

【代码】javaScript中slice()和splice()的用法与区别。

2024-12-20 22:24:17 472

原创 MySQL中on和where的区别

select name, bonus from Employee left join Bonus on Employee.EmpId = Bonus.EmpId where bonus is null or bonus < 1000 作者:力扣官方题解 链接:https://leetcode.cn/problems/employee-bonus/ 来源:力扣(LeetCode) 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

2024-12-04 14:13:00 500

原创 MySQL数据库做题笔记

replace(content, '#', ''):这是一个字符串替换操作,将字符串content中的#字符替换为空字符串。(length(content)-length(replace(content,'#',''))):通过原始字符串长度减去替换#字符后的字符串长度,得到字符串content中#字符的出现次数。(length(content)-length(replace(content,'#','')))>3:判断字符串content中#字符的出现次数是否大于 3。

2024-12-01 14:45:57 350

原创 substring()会改变原字符串,slice()不会改变原字符串

【代码】substring()会改变原字符串,slice()不会改变原字符串。

2024-11-29 11:29:16 352

原创 javaScript中replaceAll()可以匹配替换所有,replace()匹配替换一个

var interpret = function(command) { return command.replaceAll("(al)","al").replaceAll("G","G").replaceAll("()","o");};

2024-11-28 23:45:57 186

原创 javaScript中可以用includes()方法来判断数组中是否包含某个元素

let n1=0;let n2=0;i++){n1++;i++){n2++;

2024-11-28 23:24:28 208

原创 力扣做题笔记

在正确的代码中,经过修正数组元素的移除操作后,循环应该能正确地从排序后的数组两端选取元素计算平均值,并最终得到正确的最小平均值。方法是用于移除数组中的最后一个元素,并返回被移除的那个元素。它不接受参数作为要移除元素的值,而是直接移除数组末尾的元素。方法用于移除数组的第一个元素,并返回被移除的元素。它同样不接受参数作为要移除元素的值,而是直接移除数组开头的元素。正确的做法应该是先获取要移除的索引,然后使用该索引来移除元素。的元素移除操作没有按照预期进行,从而使得后续计算平均值的逻辑也出现了偏差。

2024-11-28 22:58:37 383

原创 黑马程序员Pink的javaScript课程day5(对象)笔记

console.log() \document.write() 也是内置对象。对象是一种数据类型,是无序的数据集合。对象中的方法也可以添加形参或者实参。null的对象类型为Object。13.简单数据类型和引用数据类型。方法二:对象名['属性名']5.遍历对象(for in)2.对象的操作(增删改)方法一:对象名.属性名。对象方法中的实参和形参。6.渲染学生信息表案例。12.学成在线页面渲染。

2024-11-28 22:10:00 380

原创 在 JavaScript 中,将一个十进制字符串转为二进制的方法

在上述代码中,通过从最高位(这里假设是 31 位,对于 32 位整数情况)开始,不断右移并判断每一位的值,最终得到二进制字符串。不过这种方法相对复杂一些,在实际应用中,前两种方法使用得更为普遍。如果要转换的十进制字符串表示的是一个整数,还可以通过位运算来实现转换为二进制。

2024-11-27 18:23:43 871

原创 javaScript中对字符串操作的方法

【代码】javaScript中对字符串操作的方法。

2024-11-27 18:12:36 660

原创 黑马程序员Pink的javaScript课程day4(函数)笔记

为了避免出错,形参不管是基本数据类型的变量还是数组,都可以赋一个初始化的值。break结束循环和switch,return结束函数。匿名函数的使用方法:表达式/立即执行函数。作用域分为全局作用域和局部作用域。为了避免出错,给形参一个默认值。11.转换为Boolean类型。1.函数的基本使用以及封装。3.函数封装数组求和案例。8.匿名函数及函数表达式。匿名函数:没有名字的函数。立即执行函数的第一种写法。立即执行函数的第二种写法。函数的作用:代码复用。9.封装计算时间函数。

2024-11-24 19:01:51 180

【版本控制系统】Git工具安装配置与基础操作指南:代码仓库管理及协作开发流程详解

内容概要:本文档主要介绍了Git工具的基本使用方法,涵盖从安装配置到基础命令及远程仓库的操作。首先讲解了Git在Ubuntu 18.04系统的安装方式与基本配置,包括设置用户名和邮箱。接着阐述了Git仓库的三种状态(已提交、已修改、已暂存)及其转换方法。随后详细描述了多个常用命令的功能和用法,如`git status`用于查看文件状态、`git add`用于跟踪新文件或暂存修改、`git diff`显示修改差异、`git reset`取消暂存或本地提交、`git checkout`用于切换分支或恢复文件修改、`git commit`提交修改、`git log`查看提交历史等。最后,文档还介绍了如何生成SSH公钥并添加到GitLab服务器,以及如何进行远程仓库的克隆、推送和拉取操作。; 适合人群:对版本控制有一定概念,希望深入学习Git工具的开发者或运维人员。; 使用场景及目标:①掌握Git工具的安装配置;②理解Git仓库的工作流程,熟练运用各种命令进行版本管理;③学会通过SSH协议与远程仓库交互,完成代码的克隆、推送和拉取。; 阅读建议:由于文档内容详尽且命令较多,建议读者按照实际操作顺序逐步练习,同时结合实例加深理解。特别是对于`git rebase`等复杂命令,需多加练习以确保熟练掌握。

2025-05-09

前端开发Vue快速入门:基础语法与常用指令详解及网络请求集成

内容概要:本文档是黑马程序员Vue快速入门课程的笔记,详细介绍了Vue的基础概念与核心指令。主要内容包括:如何通过CDN引入Vue、声明式渲染的基本用法、Vue实例的作用范围、常用指令如`v-text`、`v-html`、`v-on`、`v-bind`、`v-for`、`v-model`的具体应用以及它们之间的差异对比,还讲解了`v-show`与`v-if`的区别和使用场景。此外,文档也涉及到了Axios库的简单介绍及其与Vue结合开发网络应用的方式。 适合人群:适合初学者以及想要快速掌握Vue基础知识的前端开发者。 使用场景及目标:①帮助读者理解并能够独立使用Vue的核心指令完成简单的页面交互功能;②学会如何利用Axios发起HTTP请求,实现前后端数据交互;③掌握Vue的基本语法和特性,为进一步深入学习打下坚实的基础。 阅读建议:建议读者按照文档顺序逐步学习,同时动手实践每一个知识点,确保理解透彻。对于涉及到的实际案例,尽量自己尝试编写代码,遇到问题时查阅官方文档或相关资料,加深记忆。注意区分不同版本Vue之间的差异,特别是引入方式的不同。在学习Axios部分时,重点理解异步请求的概念及处理方式。

2025-05-09

web前端小项目,用html,css,javaScript,vue语言实现,可以实现新增笔记,查询笔记,修改笔记,删除单条笔记,批量删除笔记,清空笔记本,统计页面笔记数目的功能 具有登录注册功能

web前端小项目,用html,css,javaScript,vue语言实现,可以实现新增笔记,查询笔记,修改笔记,删除单条笔记,批量删除笔记,清空笔记本,统计页面笔记数目的功能。具有登录注册功能

2025-05-03

B站课程三小时带你玩转JQuery学习笔记

B站课程三小时带你玩转JQuery学习笔记

2024-11-02

全面解析前端技术要点涵盖HTML5、CSS3和JavaScript核心内容

主要内容:本文涵盖了大量的前端开发技术,包含了HTML5的新特性介绍及其语义化的益处,探讨了不同版本HTTP的区别,深入剖析了CSS3所带来的革新,例如:nth-of-type(),阴影(text-shadow, box-shadow), border-image, 渐变, 过滤器(filter),媒体查询,JS的数据类型以及一些高级概念的应用等。同时涉及DOM事件,浏览器的工作原理,脚本的执行方式等问题。 适合人群:适合初级到中级前端工程师或是有一定编码经验并寻求提升自身技能的专业人员。 适用场景及目标:用于提升网站性能,增强用户体验,帮助理解和掌握现代化Web开发生态的各种要素和技术栈。 其他说明:通过理解本文所述的技术内容可以帮助开发者写出高效可维护的代码,提高页面加载速度和降低资源消耗。

2024-10-07

前端工程师面试Vue知识点总结

前端工程师面试Vue知识点总结

2024-10-07

B站水论文的程序员论文千问的pdf资料

B站水论文的程序员论文千问的pdf资料

2024-03-31

尚硅谷web前端学习笔记javaScript基础全部 143页 40207字

尚硅谷web前端学习笔记javaScript基础全部 143页 40207字

2024-01-28

java开发+javaBean和函数调用+学生系统+对学生信息进行增删改查

在eclipse上用Java 语言写了一个学生系统,可以对学生信息进行增删改查。运行程序后会出现一个菜单,显示数字和功能,用户输入数字,会调用相应的功能,对学生信息进行增删改查

2022-10-14

最全最新Ubuntu2022安装教程

最全最新Ubuntu2022安装教程

2022-09-07

知识图谱,NLP技术的相关学习

知识图谱,NLP技术的相关学习,相关软件的下载安装和所遇到的问题和解决方法的PPT汇总

2022-08-05

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

TA关注的人

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