ecmascript 6

AAA阿giao5 天前
前端·javascript·ecmascript 6
JavaScript 中 this 的终极解析:从 call、bind 到箭头函数的深度探索在 JavaScript 编程的世界里,this 是一个既基础又令人困惑的概念。它看似简单,却常常在不经意间“背叛”我们的预期;它灵活多变,却又遵循着一套严格的规则。尤其当与 call、apply、bind 以及 ES6 引入的箭头函数结合时,this 的行为变得更加微妙而强大。
1024肥宅16 天前
前端·javascript·ecmascript 6
JavaScript 原生方法实现:数学与数字处理全解析JavaScript中的数字处理看似简单,实则隐藏着许多值得深入探讨的细节。从基本运算到复杂的大数处理,从浮点数精度到随机数生成,每个环节都影响着程序的准确性和可靠性。本文将系统性地解析JavaScript中数学与数字处理的核心实现,帮助你建立完整的技术认知体系。
San3016 天前
javascript·vue.js·ecmascript 6
破茧成蝶:Web 前端开发的三次革命与架构演进史在计算机科学的宏大叙事中,Web 前端的发展速度令人咋舌。从最初简陋的文档展示,到如今能够承载复杂 3D 交互(如 Three.js)和即时通讯的富应用平台,前端技术栈经历了一次又一次的推倒重来。
xhxxx17 天前
前端·javascript·ecmascript 6
函数执行完就销毁?那闭包里的变量凭什么活下来!—— 深入 JS 内存模型在前端开发中,我们每天都在写函数、声明变量、使用闭包。但你是否曾思考过:JavaScript 引擎究竟是如何运行你的代码的? 为什么一个函数执行完毕后,它内部的变量还能被外部访问?这些“自由变量”到底存在哪里? 要回答这些问题,我们必须深入 JS 的执行机制与内存模型。
1024肥宅17 天前
前端·javascript·ecmascript 6
字符串方法手写实现:从模板解析到Unicode处理在JavaScript开发中,字符串操作无处不在。尽管现代JavaScript已经提供了丰富的字符串方法,但理解其底层原理并能够手动实现它们,是提升编程能力和解决复杂问题的关键。本文将深入探讨模板字符串解析、正则表达式方法、字符串加密算法以及Unicode编码处理,并在此基础上补充字符串基础操作、性能优化等实用内容。
1024肥宅18 天前
前端·javascript·ecmascript 6
JavaScript 数组原生方法手写实现在JavaScript开发中,数组方法是日常编码的核心工具。理解这些方法的内部实现原理不仅能帮助我们写出更高效的代码,还能在面试中展现扎实的基础。本文将完整实现JavaScript中最重要、最常用的数组方法,涵盖高阶函数、搜索方法、扁平化方法和排序算法。
xhxxx18 天前
javascript·面试·ecmascript 6
一个空函数,如何成就 JS 继承的“完美方案”?在 JavaScript 的世界里,继承一直是开发者绕不开的话题。由于其基于原型(prototype)的独特机制,实现高效、安全、可维护的继承并非易事。从早期的原型链继承、构造函数继承,到组合继承,再到如今被广泛推崇的 寄生组合式继承(Parasitic Combination Inheritance) ,我们终于找到了一个近乎完美的解决方案。
1024肥宅19 天前
前端·javascript·ecmascript 6
手写 new 操作符和 instanceof:深入理解 JavaScript 对象创建与原型链检测在JavaScript中,new操作符和instanceof操作符是面向对象编程的核心概念。理解它们的底层原理不仅能帮助我们更好地使用JavaScript,还能在面试中展现出更扎实的基础知识。
1024肥宅23 天前
前端·javascript·ecmascript 6
JavaScript 拷贝全解析:从浅拷贝到深拷贝的完整指南在Javascript开发中,数据拷贝是我们每天都会遇到的基础操作。然而,这个看似简单的概念背后隐藏着许多陷阱和细节。错误的数据拷贝可能导致难以调试的bug、内存泄漏甚至程序崩溃。
有意义23 天前
javascript·面试·ecmascript 6
this 不是你想的 this:从作用域迷失到调用栈掌控一段代码揭示 JavaScript 作用域的本质我们从一段看似简单、却常被用作教学陷阱的 JavaScript 代码开始:
San3023 天前
javascript·面试·ecmascript 6
JavaScript 底层探秘:从执行上下文看 `this` 的设计哲学与箭头函数的救赎在 JavaScript 的学习过程中,this 关键字往往是最令人困惑的机制之一。很多开发者分不清“作用域链”查找变量和 this 指向的区别。
有意义24 天前
javascript·代码规范·ecmascript 6
从日常使用到代码实现:B 站签名编辑的 OOP 封装思路与实践在浏览 B 站(哔哩哔哩)时,你或许留意到:点击个人主页的“个性签名”,无需跳转页面或弹出复杂表单,就能直接在原位置编辑。这种“就地编辑”(Edit-in-Place)的交互方式,简洁、直观又高效,极大优化了用户体验 ✨。
1024肥宅25 天前
前端·javascript·ecmascript 6
手写 call、apply、bind 的实现apply与call类似,只是第二个参数是数组bind返回一个新函数,需要处理更多边界情况
1024肥宅25 天前
前端·javascript·ecmascript 6
防抖(Debounce)防抖:在事件被触发 n 秒后再执行回调,如果在这 n 秒内又被触发,则重新计时。
1024肥宅25 天前
前端·javascript·ecmascript 6
节流(Throttle)节流:规定在一个单位时间内,只能触发一次函数。如果这个单位时间内触发多次函数,只有一次生效。
San3025 天前
javascript·面试·ecmascript 6
深入 JavaScript 原型与面向对象:从对象字面量到类语法糖JavaScript 是一门基于对象的语言,但它早期的面向对象实现方式与传统的类继承语言(如 Java、C++)大相径庭。在没有 class 关键字的年代,JavaScript 通过原型(prototype) 机制实现了面向对象编程的核心特性:封装、继承与多态。即便 ES6 引入了 class 语法,其底层依然是原型继承的“语法糖”。理解 JavaScript 的原型系统,是深入理解这门语言的关键。
AAA阿giao25 天前
前端·javascript·ecmascript 6
深入理解 JavaScript 中的 Symbol:独一无二的“魔法钥匙”在 JavaScript 的世界里,数据类型就像各种各样的工具,每一种都有其独特的用途。而 Symbol 就像一把独一无二、不可复制的魔法钥匙,它不声不响地藏在 ES6(ECMAScript 2015)的新特性中,却在多人协作、避免命名冲突等场景下大放异彩。
_一两风1 个月前
前端·ecmascript 6
《从一道“诡异”输出题,彻底搞懂 JavaScript 的作用域与执行上下文》本文将带你系统性地解析 JavaScript 中最核心的机制之一——作用域与执行上下文。我们将通过一个具体的代码案例,结合执行栈、词法环境、变量环境和调用链,一步步揭示 JS 引擎如何“思考”变量查找与函数执行的过程。
进击的野人1 个月前
javascript·面试·ecmascript 6
深入理解 Async/Await:现代 JavaScript 异步编程的优雅解决方案在现代 JavaScript 开发中,异步编程是一个无法回避的话题。从早期的回调函数到 Promise,再到 Generator 函数,JavaScript 一直在探索更优雅的异步编程解决方案。而 async/await 的出现,可以说是 JavaScript 异步编程领域的一次重大突破,它让异步代码的书写和阅读变得更加直观和简洁。
San301 个月前
前端·javascript·ecmascript 6
深入理解 JavaScript 词法作用域链:从代码到底层实现机制先来看一段看似简单却容易出错的 JavaScript 代码:直觉上,很多人会认为输出应该是 '极客邦',因为 bar() 是在 foo() 内部调用的。但实际上,这段代码输出的是 '极客时间'。