
javascript
文章平均质量分 88
Dontla
这个作者很懒,什么都没留下…
展开
-
JavaScript分号问题(自动分号插入机制Automatic Semicolon Insertion, ASI机制)立即执行函数表达式(IIFE)、ASI规则
JavaScript的分号使用问题反映了语言设计的灵活性与潜在陷阱并存的特点。通过深入理解ASI机制,无论选择哪种风格,都能写出可靠、一致的代码。重要的不是选择使用或不使用分号,而是理解选择背后的原理,并在团队中保持一致。原创 2025-04-04 23:38:45 · 536 阅读 · 0 评论 -
JavaScript M端事件(移动端事件)触摸代码(触摸开始touchstart、触摸结束touchend、滑动触摸touchmove)
* 使用 flexbox 布局 *//* 设置盒子的背景颜色 *//* 可选: 添加边框 *//* 设置盒子的宽度 *//* 设置盒子的高度 *//* 水平居中内容 *//* 垂直居中内容 *//* 设置字体大小 */原创 2025-04-04 21:25:14 · 555 阅读 · 0 评论 -
前端页面鼠标移动监控(鼠标运动、鼠标监控)鼠标节流处理、throttle、限制触发频率(setTimeout、clearInterval)
/ 使用 lodash 的 throttle 函数进行节流。/* 使用 flexbox 布局 *//* 使用 flexbox 布局 *//* 设置盒子的背景颜色 *//* 设置盒子的背景颜色 *//* 可选: 添加边框 */// 每3000毫秒调用一次。/* 可选: 添加边框 *//* 设置盒子的宽度 *//* 设置盒子的高度 *//* 设置盒子的宽度 *//* 设置盒子的高度 *//* 水平居中内容 *//* 垂直居中内容 *//* 设置字体大小 *//* 水平居中内容 *//* 垂直居中内容 */原创 2025-04-04 21:16:15 · 547 阅读 · 0 评论 -
JavaScript闭包与C++静态变量:状态保持机制的对比(JS闭包、C++ static)(JS:普通局部变量、闭包变量)(C++:局部变量、静态局部变量)节流
JavaScript通过闭包的特性自然地实现了状态持久化,而C++则需要显式使用。关键字来实现相同效果。这是两种语言在设计理念和实现机制上的重要区别。原创 2025-04-04 18:24:21 · 224 阅读 · 0 评论 -
前端页面鼠标移动监控(鼠标运动、鼠标监控)鼠标防抖处理、mousemove、debounce()、事件停止触发、超时触发
/ 当鼠标移动时,只有在停止移动 300 毫秒后,才会更新盒子中的数字。// 更新盒子中的内容为当前计数器的值,并自增。// 更新盒子中的内容为当前计数器的值,并自增。/* 使用 flexbox 布局 *//* 使用 flexbox 布局 *//* 使用 flexbox 布局 */// 为盒子添加鼠标移动事件监听器。// 为盒子添加鼠标移动事件监听器。// 为盒子添加鼠标移动事件监听器。/* 设置盒子的背景颜色 *//* 设置盒子的背景颜色 *//* 设置盒子的背景颜色 */原创 2025-04-04 16:19:19 · 509 阅读 · 0 评论 -
ECMAScript介绍
ECMAScript 是一种脚本语言的标准,主要用于在网页上实现动态功能。它是 JavaScript 的基础,定义了语言的语法、类型、结构、语句、关键字、保留字、操作符、内置对象等。ES5(ECMAScript 5):发布于 2009 年,增加了许多新特性,如严格模式、JSON 支持等。ES6(ECMAScript 2015):引入了许多重要的新特性,如箭头函数、类、模块、Promise、解构赋值等。后续版本:每年发布的新版本(如 ES7、ES8 等)继续增加新特性和改进。原创 2025-04-03 23:36:28 · 563 阅读 · 0 评论 -
lodash库介绍(一个现代JavaScript实用工具库,提供模块化、性能优化和额外功能)JavaScript库(防抖、节流、函数柯里化)JS库
Lodash是一个现代JavaScript实用工具库,提供模块化、性能优化和额外功能,使JavaScript编程更加简单高效。该库包含200多个函数,涵盖数组、对象、函数、字符串等多种数据类型的处理。Lodash通过提供丰富的工具函数,极大地简化了JavaScript开发工作。合理使用Lodash可以使代码更加简洁、可读性更强,同时避免重复造轮子,提高开发效率。原创 2025-04-03 23:34:25 · 327 阅读 · 0 评论 -
函数柯里化(Currying)介绍(一种将接受多个参数的函数转换为一系列接受单一参数的函数的技术)
函数柯里化是一种强大的编程技巧,能够提高代码的灵活性和可重用性。通过将多参数函数转化为一系列单参数函数,开发者可以更方便地处理函数的调用和组合。原创 2025-04-03 23:28:20 · 620 阅读 · 0 评论 -
flexible.js源码分析(解决移动端屏幕适配问题的轻量级JavaScript库,在不同尺寸、不同分辨率的移动设备上的页面等比例缩放)动态缩放(设计稿分成10份,每份为1 rem)自适应缩放
Flexible.js是一个用于解决移动端屏幕适配问题的轻量级JavaScript库,由手机淘宝前端团队开发。它通过动态设置HTML根元素的font-size以及viewport的scale,实现了在不同尺寸、不同分辨率的移动设备上的页面等比例缩放,为开发者提供了便捷的适配方案。Flexible.js通过动态设置根元素的font-size和viewport的scale,巧妙地解决了移动端多屏适配问题。原创 2025-03-24 17:52:42 · 909 阅读 · 0 评论 -
HTML属性tabindex=“-1“含义(用于控制元素在页面上的键盘导航顺序,值越小,元素越早获得焦点;值为-1表示元素不能通过Tab键获得焦点)模态弹框、不可见元素
通常用于需要程序控制焦点的元素,比如在某些情况下需要动态聚焦的弹框或隐藏元素。来确保弹框在打开时可以通过 JavaScript 聚焦,而不影响页面的其他元素的焦点顺序。这个元素不会在用户按下 Tab 键时被聚焦,但可以通过 JavaScript 控制其焦点。属性的值可以影响元素是否可以通过键盘的 Tab 键获得焦点,以及它在焦点顺序中的位置。元素可以通过 Tab 键获得焦点,并且它在焦点顺序中遵循文档的自然顺序。元素可以通过 Tab 键获得焦点,并且它在焦点顺序中的位置由。值越小,元素越早获得焦点。原创 2025-03-20 18:03:07 · 757 阅读 · 0 评论 -
bootstrap介绍(前端框架)(提供超过40种可复用组件,从导航栏到轮播图,从卡片到弹窗)bootstrap框架
/ 自定义主题色// 修改组件圆角// 导入Bootstrap。原创 2025-03-20 14:17:49 · 1494 阅读 · 0 评论 -
Html label标签中的for属性(关联表单控件:将标签与特定的表单元素(如输入框、复选框等)关联起来;提高可用性;无障碍性)
当用户点击"省份名称:"文本时,会自动获取输入框的焦点,使用户体验更好。:对于使用屏幕阅读器的用户,这种关联可以帮助他们更好地理解表单结构。:当用户点击标签文本时,浏览器会自动将焦点转移到关联的表单元素上。:它将标签与特定的表单元素(如输入框、复选框等)关联起来。属性的值必须与要关联的表单元素的。属性是一个重要的无障碍功能属性。原创 2025-03-16 17:37:05 · 964 阅读 · 0 评论 -
黑马node.js教程(nodejs教程)——AJAX-Day01-04.案例_地区查询——查询某个省某个城市所有地区(代码示例)
axiosTest.html效果ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ原创 2025-03-16 17:33:00 · 1068 阅读 · 0 评论 -
Axios介绍(前端开发处理网络请求首选工具,基于Promise HTTP客户端,可以在浏览器和Node.js环境使用)(Axios库)
Axios是一个基于Promise的HTTP客户端,可以在浏览器和Node.js环境中使用。它提供了一套简单且一致的API,使得发送HTTP请求变得异常便捷。自发布以来,Axios已成为前端开发中处理网络请求的首选工具之一。Axios作为一个功能丰富、使用简便的HTTP客户端库,凭借其优秀的API设计和强大的功能扩展性,成为现代前端开发中处理网络请求的首选工具。通过合理利用配置选项、拦截器、错误处理等机制,可以构建出高效、健壮的前端应用。原创 2025-03-15 17:31:51 · 1111 阅读 · 0 评论 -
XMLHttpRequest对象(XHR对象)介绍(浏览器API对象,允许客户端脚本发送HTTP请求与服务器进行数据交换,无需刷新整个页面)(AJAX核心组件)
XMLHttpRequest (XHR) 是一个浏览器API对象,允许客户端脚本发送HTTP请求与服务器进行数据交换,而无需刷新整个页面。作为AJAX技术的核心组件,XHR于1999年首次在Internet Explorer 5中引入,后来被所有主流浏览器采纳并标准化。XMLHttpRequest作为AJAX技术的基石,虽然在现代Web开发中有了更新的Fetch API,但因其广泛的浏览器兼容性、丰富的事件处理和强大的功能特性,仍然在许多场景中发挥着不可替代的作用。原创 2025-03-15 17:02:52 · 945 阅读 · 0 评论 -
原生应用与非原生应用对比(移动应用开发领域两大主要技术路线)(原生应用Native App指专门为特定平台开发的应用程序,直接使用平台提供的SDK(软件开发工具包)和编程语言构建)
原生应用(Native App)是指专门为特定平台开发的应用程序,直接使用平台提供的SDK(软件开发工具包)和编程语言构建。iOS平台:使用Swift或Objective-C语言,基于Xcode开发环境Android平台:使用Kotlin或Java语言,基于Android Studio开发环境应用层 → 业务逻辑层 → 平台API调用层 → 操作系统。原创 2025-03-15 16:03:32 · 1042 阅读 · 0 评论 -
AJAX介绍(Asynchronous JavaScript and XML)(Web异步通信:不重新加载页面,与服务器交换数据并更新网页)XMLHttpRequest:xhr、Fetch API
AJAX技术彻底改变了Web开发模式,使网页从静态文档演变为动态应用程序。尽管经历了十多年的发展,其核心理念仍然影响着现代Web技术的设计和实现。掌握AJAX不仅是理解Web开发历史的重要一环,也是构建现代互联网应用的基础技能。原创 2025-03-15 15:39:45 · 644 阅读 · 0 评论 -
JavaScript、TypeScript、Node.js使用场景(TypeScript是JavaScript超集)(npm是Node.js自带的包管理工具)(React、vue是前端框架库)
JavaScript 和 TypeScript 的编写与运行环境取决于具体的应用场景。即使是纯前端开发,现代工具链也依赖 Node.js,因此。,并将其作为 JS/TS 开发的基础环境。原创 2025-03-08 18:37:47 · 999 阅读 · 0 评论 -
Apache ECharts介绍(基于JavaScript开发的开源数据可视化库,用于创建交互式图表)
Apache ECharts 是一个强大的开源数据可视化库,基于 JavaScript 开发,适合创建交互式图表。它由 Apache 软件基金会维护,广泛应用于 Web 开发,尤其在需要展示复杂数据的场景中。对于刚接触数据可视化的小白来说,ECharts 提供了简单易用的接口,同时具备深度定制的能力。以下将详细介绍其功能、使用方法以及发展历程。过渡动画Apache ECharts 凭借丰富的图表类型、强大的交互性和优异的性能,成为数据可视化的理想选择。对于小白来说,它易于上手,通过简单配置即可生成图表;原创 2025-03-06 14:38:58 · 1254 阅读 · 0 评论 -
JavaScript web APIs第一天——04-code——06-随机抽奖案例.html
【代码】JavaScript web APIs第一天——04-code——06-随机抽奖案例.html。原创 2025-02-25 14:46:25 · 1043 阅读 · 0 评论 -
JavaScript querySelector()、querySelectorAll() CSS选择器解析(DOM元素选择)(DOM查询)
返回匹配的第一个元素返回NodeList集合参数接受标准CSS选择器语法支持在任意Element节点上调用。原创 2025-02-24 23:24:00 · 565 阅读 · 0 评论 -
JavaScript获取DOM元素语法总结(getElementsByName()、querySelector()、querySelectorAll())
JavaScript 通过多种方法获取 DOM 元素,包括等。这些方法适合不同场景,性能和灵活性各有优劣。研究表明,是最快的,但更灵活。DOM(Document Object Model)是 HTML 和 XML 文档的编程接口,表现为网页结构的树状对象,每个对象对应页面的一部分,如 HTML 元素。获取 DOM 元素是交互式网页开发的核心,用于修改内容、样式或行为。:按 ID 获取单个元素。:按类名获取多个元素。:按标签名获取多个元素。:按 name 属性获取多个元素。原创 2025-02-24 23:03:33 · 1171 阅读 · 0 评论 -
黑马JS教程笔记(JavaScript教程)——JS基础
<head><title>JavaScript练习</title></head><body><script></script></body>原创 2025-02-18 17:52:54 · 895 阅读 · 0 评论 -
为什么JavaScript数组不推荐用for in遍历?(JS数组遍历)
如果只需要遍历元素值,使用 for…of如果需要同时访问索引和元素,使用 forEach如果需要更细粒度的控制(如提前终止循环),使用传统的 for 循环如果需要转换数组元素,考虑使用 map如果需要筛选元素,使用 filter如果需要累积计算,使用 reduce这样可以让代码更加清晰、可靠且高效。原创 2025-02-18 14:50:11 · 857 阅读 · 0 评论 -
Javascript中null、NaN、undefined区别(JS空值、Javascript空值)(?.链操作符)
JavaScript中的nullundefined和NaN代表了不同类型的"空"或"无效"状态,理解它们的区别对于编写健壮的代码至关重要。原创 2025-02-17 17:03:32 · 463 阅读 · 0 评论 -
黑马JS教程笔记(JavaScript)——JS基础——Day3-46-综合案例-渲染柱形图案例上——16-综合案例-根据数据生成柱形图.html(代码和代码解释)
你可以试着输入不同数字(比如100,200,150,300),看看柱子高度的变化效果。这是最简单的动态图表实现方式,适合入门学习~这是每个网页都有的基础结构,相当于搭了一个空房子。这个.box就像画图的画板,设置了大小和边框。每个柱子其实是一个div(网页里的一个方块)/* 这里放JavaScript代码 */原创 2025-02-17 11:28:21 · 442 阅读 · 0 评论 -
JavaScript document.write()介绍(直接将内容写入HTML文档的早期方法,已逐渐被现代DOM操作方法取代)
插入到 body 中的段落原创 2025-02-14 18:29:56 · 916 阅读 · 0 评论 -
jQuery介绍(快速、简洁JavaScript库,诞生于2006年,主要目标是简化HTML文档操作、事件处理、动画和Ajax交互)
诞生于 2006 年(由 John Resig 创建),主要目标是简化 HTML 文档操作、事件处理、动画和 Ajax 交互。如果你在维护旧项目或需要快速实现简单交互,jQuery 依然实用;但对于新项目,建议探索现代框架以获得更高的开发效率和可维护性。自动处理 IE 等浏览器的差异,开发者无需为兼容性额外编码。用类似 CSS 的选择器快速选取元素,例如。,替代原生 JavaScript 冗长的。jQuery 是一个快速、简洁的。等方法,轻松实现动态效果。统一事件监听写法,例如。原创 2025-02-11 13:48:22 · 1125 阅读 · 1 评论 -
《JS教程》笔记:一、JavaScript编程语言——2.2代码结构(不建议省略分号,代码注释)
我们再次强调一下 —— 大部分时候可以省略分号,但是最好不要省略分号,尤其对新手来说。的含义,现在它们并不重要,之后我们会学习它们。结尾,那么这是一个“不完整的表达式”,不需要分号。你可以在脚本的任何地方添加注释,它们并不会影响代码的执行,因为引擎会直接忽略它们。在这种情况下,这样将两行代码合并到一起是不对的。在这,JavaScript 将换行符理解成“隐式”的分号。我们可以在代码中编写任意数量的语句。与上面的代码相比只有一个字符的区别:第一行末尾的分号不见了。因此,最后一个示例中的代码被视为了单个语句。原创 2025-01-28 08:30:00 · 2020 阅读 · 0 评论 -
《JS教程》笔记:一、JavaScript编程语言——2.3现代模式use strict(严格模式、旧模式)
ES5 规范增加了新的语言特性并且修改了一些已经存在的特性。为了保证旧的功能能够使用,大部分的修改是默认不生效的。在接下来的章节中,当我们学习语言功能时,我们会看到严格模式与旧的模式之间的差异。这么做有利于兼容旧代码,但缺点是 JavaScript 创造者的任何错误或不完善的决定也将永远被保留在 JavaScript 语言中。新的特性被加入,旧的功能也没有改变。如果依然不行,例如你使用的是旧版本的浏览器,那么有一种很丑但可靠的启用。当它处于脚本文件的顶部时,则整个脚本文件都将以“现代”模式进行工作。原创 2025-01-29 08:45:00 · 854 阅读 · 0 评论 -
《JS教程》笔记:一、JavaScript编程语言——2.1Hello, world!(script标签、过时的type特性、废弃的language特性、古老的注释写法、src特性引入外部脚本)
我们可以使用一个<script>标签将 JavaScript 代码添加到页面中。type和language特性(attribute)不是必需的。外部的脚本可以通过的方式插入。有关浏览器脚本以及它们和网页的关系,还有很多可学的。但是请记住,教程的这部分主要是针对 JavaScript 语言本身的,所以我们不该被浏览器特定的实现分散自己的注意力。我们将使用浏览器作为运行 JavaScript 的一种方式,这种方式非常便于我们在线阅读,但这只是很多种方式中的一种。原创 2025-01-27 08:30:00 · 1140 阅读 · 0 评论 -
《JS教程》笔记:一、JavaScript编程语言——1.4开发者控制台(开发者工具、F12、>命令行标志、shift多行输入)
开发者工具允许我们查看错误、执行命令、检查变量等。在 Windows 系统中,可以通过key:F12开启开发者工具。Mac 系统下,Chrome 需要使用,Safari 使用(需要提前开启)。现在我们的环境准备好了。下一章,我们将正式开始学习 JavaScript。原创 2025-01-26 07:30:00 · 840 阅读 · 0 评论 -
《JS教程》笔记:一、JavaScript编程语言——1.3代码编辑器
轻量编辑器”和 “IDE” 最大的区别是,IDE 一般在项目中使用,这也就意味着在开启的时候要加载很多数据,如果需要的话还会分析项目的结构等。实际上,“轻量编辑器”一般都有各种各样的插件,这些插件可以做目录级(directory-level)的语法分析和代码补全。所以“轻量编辑器”和 IDE 也没有严格的界限。购买 IDE 费用对于一名合格的程序员的薪水来说,肯定算不了什么,所以去选一个对你来说最好的吧。上面列表中的编辑器都是我和我的朋友(他们都是我认为很优秀的开发者)已经使用了很长时间并且很满意的。原创 2025-01-26 07:15:00 · 587 阅读 · 0 评论 -
《JS教程》笔记:一、JavaScript编程语言——1.2手册与规范(ECMA-262规范、MDN(Mozilla)JavaScript索引、兼容性表)
所以,如果你需要关于这门语言细节最权威的信息来源,这份规范就很适合你(去阅读)。但它并不适合日常使用。但是,当你已经熟悉了这门语言的基础知识,你就会需要其他资料。所有这些资源在实际开发中都有用武之地,因为它们包含了有关语言细节,以及它们被支持的程度等非常有价值的信息。包含了大部分深入的、详细的、规范化的关于 JavaScript 的信息。想了解最新最前沿的功能,包括“即将纳入规范的”(所谓的 “stage 3”),请看这里的提案。JavaScript 是一门还在发展中的语言,定期会添加一些新的功能。原创 2025-01-25 07:45:00 · 992 阅读 · 0 评论 -
《JS教程》笔记:一、JavaScript编程语言——1.1JavaScript简介(运行方式、引擎、能做什么不能做什么、上层语言、Mock工具)
让我们来看看 JavaScript 有什么特别之处,我们可以用它实现什么,以及哪些其他技术可以与其搭配产生奇妙的效果。JavaScript最初被创建的目的是“使网页更生动”。这种编程语言写出来的程序被称为脚本。它们可以被直接写在网页的 HTML 中,在页面加载的时候自动执行。脚本被以纯文本的形式提供和执行。它们不需要特殊的准备或编译即可运行。这方面,JavaScript 和Java有很大的区别。JavaScript 在刚诞生的时候,它的名字叫 "LiveScript"。原创 2025-01-25 08:15:00 · 1624 阅读 · 0 评论 -
JavaScript Mock工具介绍(Jest、Sinon.JS)(行为验证、状态存根)
Mock是一种在软件测试中模拟对象行为的重要工具。它能帮助我们隔离被测试的代码单元,使单元测试更加可控和可靠。让我们深入理解Mock的核心概念和应用。Mock是一种测试替身(Test Double)技术,它通过创建一个模拟对象来替代真实的依赖对象。想象一下,就像电影拍摄时使用替身演员一样,Mock对象在测试中扮演着真实对象的角色,但其行为是可以被我们完全控制的。Mock是单元测试中不可或缺的工具,它通过隔离外部依赖,使我们能够专注于测试代码单元的行为。原创 2025-01-24 07:15:00 · 455 阅读 · 0 评论 -
auto.js教程(autojs教程、autox.js、autoxjs)笔记(五)环境搭建——5、autojs插件安装和使用(vscode插件)6、autojs手机端(模拟器端)和电脑端相互连接
我试了一下雷电模拟器,确实跟PC不在同一个局域网,模拟器的ip是172.16.1.4,我的PC的ip是192.168.2.31,但是模拟器还是可以ping通PC的,虽然PC无法ping通模拟器(这里雷电模拟器可能使用了类似docker的网桥)。然后我去问知乎,有个大佬说,禁用规则的优先级是高于允许规则的,看看是不是哪禁用了。发现还是不行(全部开启防火墙就可以),于是我又增加开启了9317 tcp端口的出栈流量。然后我删除出站流量配置,尝试将vscode用管理员权限启动,发现还是不行。原创 2024-02-19 23:36:24 · 9174 阅读 · 6 评论 -
auto.js教程(autojs教程、autox.js、autoxjs)笔记(四)环境搭建——3、雷电模拟器的安装和使用;4、VScode编辑器的安装和使用(略)
教程里还在4.0版本(2022),现在都更新到9.0版本了(2024)。将apk文件直接拖入窗口中即可。原创 2024-02-16 14:36:42 · 1641 阅读 · 0 评论 -
auto.js教程(autojs教程、autox.js、autoxjs)笔记(三)环境搭建——2、安卓手机投屏软件scrcpy的安装和使用(scrcpy教程、scrcpy快捷键)
设置后可能要等一会才能连接,多试几次。原创 2024-02-15 16:31:34 · 3097 阅读 · 1 评论 -
auto.js教程(autojs教程、autox.js、autoxjs)笔记(二)环境搭建——1、auto.js软件安装及简单使用(安装autojs安装auto.js安装)
另一说要安装打包插件才能打包,但我没有安装插件也能打包auto.js pro屏蔽了一些大型app,比如支付宝、微信等,是无法对其做布局分析,获取控件信息的。但是pro提供了商店,在商店里有比较丰富的脚本可供下载。pro不贵,三十多块钱,在淘宝就能买到。原创 2024-02-14 16:16:06 · 9775 阅读 · 0 评论