对构造函数有很好的理解是你掌握JavaScript这门语言的重点。我们都知道JavaScript不像其他语言,它没有class关键字,但是它有跟function非常相似的构造函数。这篇文章我们一起来详细地了解JavaScript构造函数如何构造对象。构造函数跟普通函数非常相似,但是我们通过new关键字
当原作者开始学习JS时,遇到了一个奇怪的情况,既存在undefined 的值,也存在表示空值的null。它们之间的明显区别是什么?它们似乎都定义了空值,而且,比较null==undefined的计算结果为true。大多数现代语言,如Ruby、Python或Java都有一个空值(nil或null),这似乎是一种
这里我们继续学习两个比较重要的类型,就是 Object 和 Symbol。我们主要讲的是Object,相对Object来说Symbol只是一个配角。关于对象这个概念大家非常早就会接触到了,其实人大概在5岁的时候就会产生对象的抽象。很多时候我们看起来好像对象是我们学编程的时候
前言如今几乎所有的视频网站都有弹幕功能,那么今天我们就自己用原生 JavaScript 封装一个弹幕类。这个类希望有如下属性和实例方法:属性el容器节点的选择器,容器节点应为绝对定位,设置好宽高height 每条弹幕的高度mode 弹幕模式,half则为一半容器高度
在当今世界,JavaScript框架每周都会出现,其他一切都会随之改变,这很容易让人陷入困境,并怀疑你的网站是否以最佳状态执行。哪些做法要保留,哪些要放弃。我读到过,使用 implementationx 可以帮助提升性能。但另一个帖子提到要不惜一切代价避免使用它——真相是
Node.js是一个免费的跨平台 JavaScript 运行时环境,尽管它本质上是单线程的,但是可以在后台使用多个线程来执行异步代码。由于Node.js的非阻塞性质,不同的线程执行不同的回调,这些回调首先委托给事件循环。Node.js运行时负责处理所有这一切。为什么要使用NodeJS
javascript语言的执行环境是单线程(singlethread),就是指一次只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。这种模式的好处是实现起来比较简单,执行环境相对单纯;但是只要耗时比较多,假如有一个任务耗时很长,后面的
现代JavaScript框架使构建复杂的Web应用变得非常容易。VanillaJavaScript指的是纯Javascript代码,没有使用任何框架进行扩展,这在创建小型应用程序时很好用。1.Swiper.jsSwiper是免费的现代移动触摸滑块控件,具有硬件加速过渡和惊人的原生行为。官网:https://swiperjs.com
在这篇文章中,我们会进行一个有趣的测试,看看我们如何提高扩展运算符的性能。让我们首先简要介绍一下扩展运算符在数组中的工作原理。扩展运算符,也就是我们常用的三个,让数组展开变成每个小块。然后使用中括号语法[],重新组装这些小块构造一个新数组。扩展运算符可以被放
在本文中,我们将讨论事件处理程序、事件监听器和事件对象。我们还将介绍三种不同的处理事件的方法,以及一些最常见的事件。通过了解事件,您将能够为用户提供更具交互性的web体验。事件是发生在浏览器中的操作,可以由用户或浏览器本身发起。以下是一些发生在网站上的常见事