JavaScript
文章平均质量分 80
深入理解JavaScript方方面面
剑九_六千里
我会变强,不会变秃
展开
-
JavaScript的现代进阶:从ES6到ES15看这一篇就够了
自从ES6(ECMAScript 2015)以来,JavaScript作为一门语言经历了前所未有的变革,每年的新版本都带来了令人振奋的新特性和优化,极大地提升了开发者的生产力和代码的可维护性。本文将深入探讨从ES6到ES15(ECMAScript 2024)期间JavaScript的演变历程,旨在为开发者提供一份全面的指南,涵盖语言的关键更新和实用示例。原创 2024-07-25 10:25:16 · 1071 阅读 · 0 评论 -
【八股系列】JavaScript如何判断一个对象是否属于某个类?
在JavaScript中,判断一个对象是否属于某个类(或者更准确地说,是否是某个构造函数创建的实例)有几种常见的方法:原创 2024-07-24 09:16:55 · 584 阅读 · 0 评论 -
探索扫描二维码登录的奥秘:从前端到后端的无缝连接
在数字化时代,我们几乎每天都会接触到各种各样的二维码,尤其是在登录网站或应用程序时。扫描二维码登录不仅提升了用户体验,还极大地简化了登录流程,增强了安全性。本文将深入探讨这一技术背后的原理,以及前后端如何协同工作,实现这一看似简单的功能。原创 2024-07-23 10:56:57 · 1477 阅读 · 0 评论 -
掌握浏览器版本检测:从代码到用户界面
在现代Web开发中,了解用户的浏览器类型及其版本变得尤为重要。这不仅有助于优化网站的兼容性,还能确保为用户提供最佳的浏览体验。最常用的检测浏览器版本的方式是通过分析navigator.userAgent属性。这是一个包含浏览器信息的字符串,其中不仅涵盖了浏览器的名称,还隐藏了其版本号。原创 2024-07-22 08:35:44 · 332 阅读 · 0 评论 -
探索 JavaScript Polyfill:跨越浏览器兼容性的桥梁
在前端开发的世界里,我们常常面临着一个挑战:如何确保我们的应用能够在各种不同的浏览器中优雅地运行,无论是最新版本的 Chrome 还是那些老旧的 IE 浏览器。这不仅仅是关于美观和用户体验的问题,更是关乎于功能的完整性和代码的可维护性。幸运的是,Polyfill 的出现为我们提供了一种优雅的解决方案,它就像一座桥梁,连接着现代 JavaScript 特性和那些尚未跟上的浏览器。本文将深入探讨 Polyfill 的概念、工作原理以及如何有效地在项目中运用它们。原创 2024-07-19 17:09:39 · 1319 阅读 · 0 评论 -
构建高效Node.js中间层:探索请求合并转发的艺术
在现代Web开发中,随着应用程序变得越来越复杂,前端与后端之间的交互也日益频繁。这种频繁的通信虽然保证了数据的实时更新,但也带来了额外的网络延迟和服务器负载问题。特别是在移动设备上,网络状况的不确定性更是加剧了这些问题。因此,引入一种机制,能够智能地合并并转发请求,以减少不必要的网络往返次数,就显得尤为重要。这就是我们今天要探讨的主题——请求合并转发。原创 2024-07-19 10:01:47 · 1015 阅读 · 0 评论 -
【八股系列】防抖节流函数原理、区别以及应用?
防抖节流函数原理、区别以及应用?原创 2024-05-11 09:53:14 · 391 阅读 · 0 评论 -
【八股系列】点击一个按钮,浏览器会做些什么事情【呈现效果时流程】?(js)
在我们日常浏览网页时,轻轻一点,似乎一切变化都发生在瞬间。但在这简单的动作背后,浏览器正进行着一系列复杂而精细的操作,确保每一个交互都能准确无误地完成。本文将带你深入探索,当我们在网页上点击一个按钮时,浏览器内部究竟经历了怎样的“旅程”。原创 2024-06-20 11:35:38 · 650 阅读 · 1 评论 -
【八股系列】怎么处理项目中的异常捕获行为?(js)
在`JavaScript`项目中,合理地处理异常捕获对于提高程序的健壮性和用户体验至关重要。以下是一些关键实践和方法:原创 2024-06-19 08:45:56 · 500 阅读 · 2 评论 -
【八股系列】HTTP请求特征是什么?
HTTP请求特征是什么?原创 2024-05-29 09:54:16 · 976 阅读 · 0 评论 -
【八股系列】如何编写更高效的JavaScript代码?JavaScript如何加快页面渲染速度,都有哪些方式?
如何编写更高效的JavaScript代码?JavaScript如何加快页面渲染速度,都有哪些方式?原创 2024-05-28 17:49:19 · 1219 阅读 · 0 评论 -
【八股系列】谈谈关于对webpack热更新的原理?
谈谈关于对webpack热更新的原理?原创 2024-05-27 09:13:38 · 517 阅读 · 0 评论 -
JavaScript垃圾回收
垃圾回收是一种自动内存管理的形式,它负责寻找不再使用的对象,并释放其占用的内存。在JavaScript中,由于开发者无需直接管理内存(如分配和释放),因此垃圾回收机制就显得尤为重要。原创 2024-04-07 10:02:59 · 797 阅读 · 0 评论 -
JavaScript异步编程规范->实现一个符合Promise A+规范的 Promise
JavaScript异步编程规范->实现一个符合Promise A+规范的 Promise原创 2024-04-01 06:30:00 · 1709 阅读 · 0 评论 -
JavaScript中call、apply、bind详解及手写实现
首先,我们都知道JavaScript中的this指向分为软绑定及硬绑定。并且this的指向与执行上下文有关系。在全局执行上下文中,this指向 全局对象(),在对象调用其内部方法时,this指向调用的地方,这就称为。那么如何使用呢?这就需要使用JavaScript中内置的方法来实现了。原创 2024-03-31 15:50:35 · 1463 阅读 · 0 评论 -
JavaScript继承的多种方式及优缺点
【代码】JavaScript继承的多种方式及优缺点。原创 2024-03-31 06:30:00 · 493 阅读 · 0 评论 -
JavaScript中this指向
在 JavaScript 中,this 的指向是一个相对复杂且容易混淆的概念。它的指向取决于函数调用的方式和上下文。以下是一些常见的情境,以及在这些情境中 **this** 的指向原创 2024-03-31 06:30:00 · 592 阅读 · 0 评论 -
为什么要使用href=”javascript:void(0);”
href=”javascript:void(0);”这个的含义是,让超链接去执行一个js函数,而不是去跳转到一个地址,而void(0)表示一个空的方法,也就是不执行js函数。为什么要使用href=”javascript:void(0);”javascript:是伪协议,表示url的内容通过javascript执行。void(0)表示不作任何操作,这样会防止链接跳转到其他页面。这么做往往是为了保留链接的样式,但不让链接执行实际操作,```javascript<a href="javascri原创 2021-12-20 14:50:35 · 264 阅读 · 0 评论 -
实现 js 中的深拷贝
这里写目录标题简单需求JSON的缺点:递归拷贝简单需求var obj = { name: 'tom', age: 22}var p = JSON.parse(JSON.stringfiy(obj))JSON的缺点:不支持函数不支持undefined(支持null)不支持循环引用, 比如: a = {name: ‘a’}; a.self = a; a2 = JSON.parse(JSON.stringify(a))不支持date, 会变成ISO8601字符串不支持正则表达式不原创 2022-03-02 11:02:31 · 413 阅读 · 0 评论 -
记录js正则校验的一些规则
文章目录1.数字校验2.常用场景2.1 校验身份证号码2.2 校验邮箱2.3 校验传真格式2.4 校验手机号码2.5 校验银行卡号1.数字校验验证数字:^[0-9]*$验证n位的数字:^\d{n}$验证至少n位数字:^\d{n,}$验证m-n位的数字:^\d{m,n}$验证零和非零开头的数字:^(0|[1-9][0-9]*)$验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$验证非零的正整数:^\+?[.原创 2022-01-10 16:22:27 · 867 阅读 · 0 评论 -
ES6模块导出和导入
在前端开发中,我们经常需要将一个大的项目拆分成多个小的模块,方便开发和维护。为了实现模块化编程,ES6 提供了导出和导入的语法。本文将介绍 ES6 模块导出和导入的用法。原创 2022-02-11 11:26:16 · 4448 阅读 · 1 评论 -
JavaScript中Set求交集/并集/差集
通过使用Set对象,我们可以很方便地进行交集、并集和差集运算,从而快速地对数据进行处理。需要注意的是,Set对象中不允许出现重复的值,因此合并后的集合中不会包含重复的元素。原创 2022-06-24 09:16:22 · 3431 阅读 · 0 评论 -
JavaScript中Object.defineProperty的深度学习及模拟Vue双向绑定的实现
Object.defineProperty 方法允许你定义一个对象的属性,包括属性的值、可枚举性、可写性和可配置性等。通过使用 Object.defineProperty 方法,你可以创建计算属性、只读属性、隐藏属性等高级属性,从而使你的代码更加灵活和可维护。原创 2022-06-27 22:15:19 · 1211 阅读 · 0 评论 -
JavaScript中proxy的深度学习
Proxy 对象是 JavaScript 中的一个特殊对象,它可以用于拦截和处理对象上可以执行的各种操作。使用 Proxy 对象可以实现很多高级别的拦截和控制,例如数据验证、对象虚拟化、数据绑定、缓存等。原创 2022-06-28 22:05:29 · 5064 阅读 · 3 评论 -
javascript中reduce的用法
本篇文章主要介绍了JavaScript中reduce方法的常用场景和使用示例,并提供了自己实现reduce方法的代码示例。掌握reduce方法的使用方法,能够提高代码的可读性和扩展性,减少冗余代码量,同时也实现了更好的代码复用。原创 2022-06-28 23:32:28 · 10312 阅读 · 0 评论 -
javascript构造函数及原型链梳理
构造函数和原型链是 JavaScript 中的重要概念,它们可以用于创建对象和实现继承功能。掌握构造函数和原型链的基本概念和用法,有助于提高 JavaScript 编程技能。下次再见。原创 2022-07-06 07:18:30 · 356 阅读 · 0 评论 -
JavaScript异步编程:(回调函数、Promise、async/await、Generator)
JavaScript中异步编程的目的是允许代码执行非阻塞操作。这很重要,因为JavaScript是一种单线程语言,意味着一次只能执行一个任务。异步编程允许同时执行多个任务,提高性能和响应能力。JavaScript中有几种异步编程技术,包括回调函数Promise和生成器。原创 2023-07-09 17:18:19 · 1148 阅读 · 0 评论 -
数组扁平化flat方法的多种实现
数组扁平化是指将一个多维数组变成一维数组的过程。在 JavaScript 中,可以使用 flat() 方法来实现数组扁平化,该方法可以将一个多维数组变成一个一维数组。flat() 方法有一个可选参数,表示需要扁平化的层数。除了 flat() 方法外,还可以使用其他方法来实现数组扁平化。下面是几种常见的实现方式。原创 2023-07-09 14:29:33 · 552 阅读 · 0 评论