
JavaScript
文章平均质量分 69
JavaScript笔记
胡西风_foxww
人生的智慧就是如何尽量幸福度过一生的艺术。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
前端ES6学习复习总目录
ECMA(European Computer Manufacturers Association)是欧洲计算机制造商协会,目标是评估、开发和认可电信和计算机标准。1994年后改名为Ecma国际。ECMA-262 是Ecma国际制定的一个标准,专门描述了ECMAScript语言的行为。原创 2024-09-04 23:27:20 · 2141 阅读 · 0 评论 -
javascript中运算符的优先级
原创 2025-05-28 19:02:52 · 258 阅读 · 0 评论 -
事件冒泡与捕获
事件流流程:先捕获(根→目标),后冒泡(目标→根)。事件绑定:通过的第三个参数控制阶段(true=捕获,false=冒泡)。事件控制阻止传播,阻止默认行为,额外中断同节点事件。应用场景:捕获适合全局控制,冒泡适合事件代理(减少内存占用),阻止方法用于避免事件干扰。原创 2025-04-19 12:49:59 · 478 阅读 · 0 评论 -
【ES6复习笔记】ES6的模块化(18)
模块化是指将一个复杂的系统分解为多个模块,每个模块完成一个特定的功能,模块之间通过接口进行通信。模块化的目的是提高代码的可读性、可维护性和可重用性。模块功能主要有两个命令构成:export 和 inport。简便形式(只针对默认暴露)原创 2024-12-25 21:22:15 · 813 阅读 · 0 评论 -
【ES6复习笔记】对象方法扩展(17)
在 JavaScript 中,对象是属性和方法的集合。除了内置的方法,我们还可以通过扩展对象的原型来添加新的方法。本教程将介绍如何使用。方法用于将一个或多个源对象的所有可枚举属性复制到目标对象,并返回目标对象。通过这些方法,我们可以更灵活地操作和扩展对象。操作符,但它对一些特殊情况的处理有所不同。方法用于比较两个值是否相等,类似于。方法用于设置一个对象的原型对象,而。方法用于获取一个对象的原型对象。原创 2024-12-25 20:58:06 · 354 阅读 · 0 评论 -
【ES6复习笔记】数值扩展(16)
在 JavaScript 中,数值扩展提供了一些额外的功能,使得处理数值变得更加方便。本教程将介绍一些常用的数值扩展方法和属性。原创 2024-12-25 20:50:39 · 742 阅读 · 0 评论 -
【ES6复习笔记】Class类(15)
ES6 提供了更接近传统语言的写法,引入了 Class(类)这个概念,作为对象的模板。通过 class 关键字,可以定义类。基本上,ES6 的 class 可以看作只是一个语法糖,它的绝大部分功能,ES5 都可以做到,新的 class 写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。call(){console.log('我可以打电话')原创 2024-12-25 20:34:16 · 597 阅读 · 0 评论 -
【ES6复习笔记】Map(14)
Map 是 JavaScript 中的一种数据结构,它允许你存储键值对,并且可以通过键来访问对应的值。在本教程中,我们将学习如何声明、添加、删除、获取和遍历 Map 集合。在 JavaScript 中,你可以使用。下面是一个完整的代码示例,展示了如何使用 Map 集合。方法从 Map 中删除指定的键值对。循环来遍历 Map 中的所有键值对。属性来获取 Map 中元素的数量。方法获取 Map 中指定键的值。方法清空 Map 中的所有元素。来创建一个新的 Map 实例。方法向 Map 中添加元素。原创 2024-12-25 20:21:19 · 705 阅读 · 0 评论 -
【ES6复习笔记】集合Set(13)
集合是一种非常有用的数据结构,它可以帮助我们快速地进行数组去重、求交集、并集和差集等操作。在实际开发中,合理使用集合可以提高代码的效率和可读性。原创 2024-12-24 21:02:59 · 507 阅读 · 0 评论 -
【ES6复习笔记】Promise对象详解(12)
Promise 是 JavaScript 中处理异步操作的一种机制,它可以让异步操作更加容易管理和控制。Promise 对象代表一个异步操作的最终完成或失败,并提供了一种方式来处理操作的结果。Promise 对象有三种状态:Promise 的基本语法如下:3.Promise的then方法4. Promise的catch方法函数只有一个回调函数,意味着如果Promise对象状态为失败就会调用catch()方法并且调用回调函数5. Promise 的实践5.1 读取单个文件使用 Promise 封原创 2024-12-24 20:42:36 · 590 阅读 · 0 评论 -
【ES6复习笔记】生成器(11)
生成器函数是一种特殊的函数,它可以在执行过程中暂停并保存当前状态,然后在需要时恢复执行。生成器函数通过yield关键字来实现暂停和恢复执行的功能。原创 2024-12-24 15:30:51 · 1220 阅读 · 0 评论 -
【ES6复习笔记】迭代器(10)
迭代器是一种对象,它能够遍历并访问一个集合中的元素。在 JavaScript 中,迭代器提供了一种统一的方式来处理各种集合,如数组、字符串、Map、Set 等。通过迭代器,我们可以按顺序访问集合中的元素,而不需要关心集合的内部结构。除了使用内置的迭代器,我们还可以自定义迭代器。例如,我们可以为一个对象定义一个迭代器,使得这个对象可以被for...of循环遍历。// 声明一个对象name: "终极一班",stus: ['knight'],// 索引变量//return {原创 2024-12-24 15:13:18 · 516 阅读 · 0 评论 -
【ES6复习笔记】Symbol 类型及其应用(9)
Symbol是 JavaScript 中的一种基本数据类型,它表示唯一的标识符。Symbol的主要目的是防止属性名冲突,尤其是在多个代码库或模块中共享对象时。Symbol值可以用作对象的属性名,这样可以确保属性名是唯一的,不会与其他属性名冲突。Symbol是 JavaScript 中一种非常有用的数据类型,它可以用来创建唯一的标识符,防止属性名冲突,并且可以用来定义对象的一些特殊行为。通过合理使用Symbol,可以使代码更加健壮和可维护。原创 2024-12-24 14:57:40 · 566 阅读 · 0 评论 -
【ES6复习笔记】Spread 扩展运算符(8)
扩展运算符是 JavaScript 中一个非常强大的特性,它可以让你更方便地处理数组和对象。通过使用扩展运算符,你可以避免编写繁琐的循环和条件语句,从而使你的代码更加简洁和易于维护。原创 2024-12-24 14:32:00 · 577 阅读 · 0 评论 -
【ES6复习笔记】rest参数(7)
rest需要注意的是,rest参数必须放在参数列表的最后。在这个例子中,a和b是函数的前两个参数,而args是一个数组,包含了所有剩余的参数。rest参数是一个非常有用的特性,它可以简化函数的参数处理,提高代码的可读性和可维护性。在 ES6 及以后的版本中,推荐使用rest参数来处理不定数量的参数。原创 2024-12-24 14:05:38 · 492 阅读 · 0 评论 -
【ES6复习笔记】函数参数的默认值(6)
在ES6中,函数参数默认值是一个非常有用的特性,它允许你在定义函数时为参数指定一个默认值。如果在调用函数时没有提供相应的参数值,那么函数将使用默认值。原创 2024-12-24 13:58:52 · 426 阅读 · 0 评论 -
【ES6复习笔记】箭头函数(5)
本教程将介绍如何在 JavaScript 中使用箭头函数,包括箭头函数的基本语法、特点以及在实际开发中的应用。通过本教程,你将学会如何使用箭头函数来简化代码,提高代码的可读性和简洁性。箭头函数是 ES6 引入的一种新的函数定义方式,它具有简洁的语法和一些特殊的特性。箭头函数的this是静态的,它不会创建自己的this上下文,而是继承外层函数的this。箭头函数不能作为构造函数,也没有自己的arguments对象。在实际开发中,箭头函数适用于回调函数、简洁的函数表达式以及避免this指向问题的场景。原创 2024-12-24 13:48:48 · 953 阅读 · 0 评论 -
ECMAScript 6-11 概述
ECMA(European Computer Manufacturers Association)是欧洲计算机制造商协会,目标是评估、开发和认可电信和计算机标准。1994年后改名为Ecma国际。ECMA-262 是Ecma国际制定的一个标准,专门描述了ECMAScript语言的行为。原创 2024-12-24 13:45:51 · 295 阅读 · 0 评论 -
【ES6复习笔记】简化对象写法(4)
ES6 允许在大括号里面,直接写入变量和函数,作为对象的属性和方法。原创 2024-12-24 13:31:06 · 141 阅读 · 0 评论 -
【ES6复习笔记】模板字符串(3)
模板字符串是 ES6 引入的一种新的字符串声明方式,它使用反引号(`)来定义字符串,而不是单引号(')或双引号(")。模板字符串可以包含变量、表达式和换行符,这使得它们非常适合用于构建复杂的字符串。原创 2024-12-24 13:22:50 · 546 阅读 · 0 评论 -
【ES6复习笔记】解构赋值(2)
解构赋值是一种非常方便的语法,可以让我们更简洁地从数组和对象中提取值,并且可以应用于很多实际开发场景中。原创 2024-12-24 13:13:32 · 486 阅读 · 0 评论 -
【ES6复习笔记】let 和 const 命令(1)
let和const都具有块级作用域。let声明的变量可以被重新赋值,而const声明的常量不能被重新赋值。const对于数组和对象,只是保证其引用地址不变,内部元素可以修改。原创 2024-12-24 13:04:48 · 645 阅读 · 0 评论 -
/^js正则表达式$/img
1.任何前端,后端,移动端,IOS,Android,java。学好正则,可以对任意信息进行检测,匹配,提取,判断2.是一门新的语法格式3.你不会写,可以搜索在一个正则表达式中,描述了,匹配字符串的规则,我们可以通过该规则,进行字符串的监测.原创 2024-11-12 13:17:43 · 1125 阅读 · 0 评论 -
异步和单线程宏任务微任务
宏任务:setTimeout, setInterval, Ajax, DOM事件微任务:Promise async/await微任务执行时机比宏任务要早。event-loop 和DOM渲染的关系JS是单线程的,而且和DOM渲染共用一个线程JS执行的时候,得留出一些时机供DOM渲染微任务:DOM渲染前触发,如Promise宏任务:DOM渲染后触发,如setTimeout。原创 2024-10-19 15:03:49 · 382 阅读 · 0 评论 -
promise对象详解
参考:阮一峰es6一书中的Promise对象 所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。Promise 提供统一的 API,各种异步操作都可以用同样的方法进行处理。Promise.prototype = { then: function(resolv.....................原创 2018-05-03 16:18:56 · 630 阅读 · 0 评论 -
使用ES6封装Ajax类
主要用于数据的转换及 URL 处理。当用户未指定参数时,将使用默认参数。可以根据需要设置一些常量。转载 2023-03-25 11:22:00 · 258 阅读 · 0 评论 -
前端 a链接 如何实现下载功能
在中后台项目中,前端难免需要处理下载的逻辑,需要下载的内容包括但不限于图片、Excel 表格、CSV 文件、MP4 文件、PDF 文件、TXT 文件、JSON文件、HTML 文件等等。虽然下载的内容各式各样,但是下载的原理大同小异。下面来一起学习一下前端是如何处理下载的。URL.createObjectURL(blob) 可以直接访问,无需 “编码 / 解码”,但需要记得撤销(revoke);而 Data URL 无需撤销(revoke)任何操作,但对大的 Blob 进行编码时,性能和内存会有损耗。转载 2024-05-07 11:56:11 · 1528 阅读 · 0 评论 -
【网络安全 / 前端 XSS 防护】一文带你了解 HTML 的特殊字符转义及编码
如果用户输入的内容未经过转义或编码处理,并且在个人简介页面上直接显示,那么攻击者可以在自我介绍中插入恶意 HTML 标签或属性。例如,当浏览器检测到页面中的特殊字符被正确转义或编码时,它们会将其视为纯文本,不会将其解析为 HTML 标签或脚本。转义时应考虑多重编码:当字符传输经过多个层级或环节时,确保在每个层级或环节上都进行了正确的编码和转义处理。这样,HTML 标签和属性不再被解析为可执行的代码,保护了页面和用户的安全。这样,URL 中的特殊字符被转义为实体编码,防止了恶意代码的执行。转载 2024-04-01 20:49:40 · 702 阅读 · 0 评论 -
最全前端资源汇集____有过时内容斟酌备用
综合类 地址前端知识体系 [链接] 前端知识结构 [链接] 前端知识体系 [链接]Web 前端在线开发网站 [链接]Web 前端开发大系概览 - 中文版 [链接] 免费的编程中文书籍索转载 2024-02-01 09:20:30 · 297 阅读 · 0 评论 -
chrome扩展程序开发之在目标页面运行自己的JS
chrome 插件开发的入门介绍,实现利用 chrome 扩展实现在目标网页运行我们的 js 的功能。关于 chrome 扩展的详细内容,可以通过官网了解。开发工具很简单,记事本就 OK 了,当然还要有一个 chrome 浏览器。新建一个文件夹,比如,HelloWorld然后创建一个文本文件,作为这个扩展程序的配置文件,所以文件名是 manifest.json,注意扩展名是 json,然后输入如下内容。1.png 的话,随便拖一张图片进来就 OK 啦。原创 2023-12-26 10:26:50 · 871 阅读 · 0 评论 -
使用JSDoc生成漂亮的文档
JSDoc是一个用于 JavaScript 的API文档生成器,类似于 Javadoc 或 phpDocumentor。可以将文档注释直接添加到源代码中。JSDoc 工具将扫描您的源代码并为您生成一个 HTML 文档网站。原创 2023-12-26 10:22:02 · 2435 阅读 · 2 评论 -
vue中原生H5拖拽排序_拖拽图片也是同样的道理
原文地址H5有基于拖拽的事件机制,如果你还不熟悉,请看我之前的文章中有介绍。原创 2023-11-21 23:18:53 · 435 阅读 · 0 评论 -
jQuery.form.js 详细用法_维护老项目使用
jquery form 是一个表单异步提交的插件,可以很容易提交表单,设置表单提交的参数,并在表单提交前对表单数据进行校验和处理和表单提交后的函数调用。原创 2023-04-04 17:07:10 · 1064 阅读 · 1 评论 -
jQuery属性操作prop()、attr()和data()
在上述代码中,div 的 index 属性是一个普通的自定义属性,data-index 是 HTML5 的自定义属性 (以“data-” 开头),使用 atr()方法都可以进行设置或获取。Attr() 用来设置或获取元素的自定义属性,自定义属性是指用户给元素添加的非固有属性。jQuery 提供了一些属性操作的方法,主要包括 prop()、attr() 和 data() 等。在上述代码中,第 3 行用来获取 data-index 属性,属性名中不需要 “data-” 前缀,并且返回的结果是数字型。原创 2023-03-02 13:40:04 · 609 阅读 · 0 评论 -
AJAX从远古到现在的变迁
XHR对象在请求与响应过程中,状态会不断变化(0-4)逐步变化,我们可以绑定一个函数,监听状态的变化,只要状态变化就出发某函数。利用HTTP 204 No Content状态码,当浏览器收到204时,页面不做跳转。如果使用异步,下面的代码继续执行,等你请求完成了,我该怎么知道这个变化呢?如果xhr.readyState变为4时,说明请求已经完成了。XMLHttpRequest对象,一个专门的HTTP请求工具。// 1:制造xhr。// 2: 打开链接。// 3: 发送请求。原创 2023-02-14 10:56:23 · 368 阅读 · 0 评论 -
即时通讯(instant-messaging)的前世今生
其实原理跟 ajax轮询 差不多,都是采用轮询的方式,不过采取的是阻塞模型(一直打电话,没收到就不挂电话),也就是说,客户端发起连接后,如果没消息,就一直不返回Response给客户端。虽然接线员很快速,但是每次都要听这么一堆,效率也会有所下降的,同时还得不断把这些信息转交给客服,不但浪费客服的处理时间,而且还会在网路传输中消耗过多的流量/时间。通俗的说就是,服务器因为每天要接待太多客户了,是个健忘鬼,你一挂电话,他就把你的东西全忘光了,把你的东西全丢掉了。有了,来吧, 给你(Response)原创 2023-02-08 17:21:49 · 691 阅读 · 0 评论 -
认识HTML5的WebSocket
在 HTML5 规范中,我最喜欢的 Web 技术就是正迅速变得流行的 WebSocket API。WebSocket 提供了一个受欢迎的技术,以替代我们过去几年一直在用的 Ajax 技术。这个新的 API 提供了一个方法,从客户端使用简单的语法有效地推动消息到服务器。让我们看一看 HTML5 的 WebSocket API:它可用于客户端、服务器端。而且有一个优秀的第三方 API,名为 Socket.IO。一、什么是 WebSocket API?转载 2023-02-06 09:59:11 · 190 阅读 · 0 评论 -
老姚浅谈:怎么学 JavaScript?,文中的学习方法值得借鉴,可收藏
原文地址大家好,我是若川。当初我就是看本文深受启发,开始看书读源码。所以现在联系了作者 @老姚 授权转载分享给大家。我按照文中的做法敲完了《JavaScript 语言精粹 修订版》,在 2017 年 7 月 23 日写出了我的第一篇文章《读书笔记》。看完了《JavaScript 面向对象编程》、《你不知道的 JavaScript》上中卷等书。到现在看了很多源码,输出了 10 余篇学习源码系列。面试、年度总结、JS 基础系列@老姚 可能有一部分读者朋友不知道是谁。转载 2023-02-03 09:38:03 · 265 阅读 · 0 评论 -
JS面向对象---原型链继承
使用new运算符创建对象过程:(如下图) ** 构造函数模式缺点 **每个方法都要在实例对象上创建一遍每个函数都有prototype属性,改属性指向函数自己的原型对象,原型对象可以让所有对象实例共享属性和方法;** 原型模式缺点(原型属性时引用类型时,会被所有实例共享,) **2、构造函数继承2.1、原型链缺点:demo:2.3、借用构造函数(拷贝父类的属性添加到子类实例对象中)优点: 解决了2.2中的两个问题向父类传递参数demo:缺点:使用原型链实现对原型属性和方法的继承,借用构造原创 2022-06-29 23:02:07 · 376 阅读 · 0 评论 -
JavaScript中的日期对象
Date对象介绍javascript 时钟<div id="clock"></div><script> var clock = document.getElementById('clock'); // clock.innerHTML = '2021-07-18'; function getTodayTime(){ var d = new Date(); var year = d.getFullYear(); var month = d.get原创 2022-04-01 23:12:04 · 151 阅读 · 0 评论