
JavaScript
文章平均质量分 88
qq_43067585
这个作者很懒,什么都没留下…
展开
-
如何安装并管理多版本node?方法介绍
如何安装并管理多版本node?下面本篇文章给大家介绍一下多版本node的安装与切换详细操作,希望对大家有所帮助!转载 2022-11-11 09:59:23 · 2384 阅读 · 1 评论 -
如何上手Angular,先从 8 个开源项目开始!
多年的学习经验告诉我,了解一个概念最快的方式是看他的实践,所以我整理出了 8 个在学习 Angular 过程中可以参考的开源项目,学习如何怎么使用 Angular 框架~转载 2022-11-10 09:51:01 · 1086 阅读 · 0 评论 -
JavaScript中关于“this”的7个有趣面试题,你能全答对吗?
在 JavaScript 中,this是函数调用上下文。正是由于this的行为很复杂,所以在 JavaScript 面试中,总是会问到有关 this的问题。转载 2022-06-07 10:17:16 · 316 阅读 · 0 评论 -
深入解析JavaScript中的作用域
本篇文章带大家深入理解JavaScript作用域。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。这篇文章称为笔记更为合适一些,内容来源于 《你不知道的JavaScript(上卷)》第一部分 作用域和闭包。讲的很不错,非常值得一看。什么是作用域作用域是根据名称查找变量的一套规则。理解作用域先来理解一些基础概念:引擎:从头到尾负责整个JavaScript程序的编译及执行过程。 编译器:负责语法分析和代码生成。这部分也可以看JavaScript代码是如何被执行的.转载 2021-06-02 09:57:30 · 119 阅读 · 0 评论 -
7种JS创建对象的经典方式
相关推荐:《javascript视频教程》JavaScript创建对象的方式有很多,通过Object构造函数或对象字面量的方式也可以创建单个对象,显然这两种方式会产生大量的重复代码,并不适合量产。接下来介绍七种非常经典的创建对象的方式,他们也各有优缺点。(内容主要来自于《JavaScript高级程序设计》,还参考了一下别人写的文章)一、工厂模式functioncreatePerson(name,job){varo=newObject();o.name=name;...转载 2021-01-14 09:50:35 · 87 阅读 · 0 评论 -
JavaScript中的内存管理
相关推荐:《javascript视频教程》大多数时候,我们在不了解有关内存管理的知识下也只开发,因为 JS 引擎会为我们处理这个问题。不过,有时候我们会遇到内存泄漏之类的问题,这个只有知道内存分配是怎样工作的,我们才能解决这些问题。在本文中,主要介绍内存分配和垃圾回收的工作原理以及如何避免一些常见的内存泄漏问题。缓存( Memory)生命周期在 JS 中,当我们创建变量、函数或任何对象时,J S引擎会为此分配内存,并在不再需要时释放它。分配内存是在内存中保留空间的过程,而释放内存则释..转载 2021-01-08 10:03:04 · 136 阅读 · 0 评论 -
JavaScript中拷贝数组的14个小技巧
相关推荐:《javascript视频教程》数组拷贝经常被误解,但这并不是因为拷贝过程本身,而是因为缺乏对 JS 如何处理数组及其元素的理解。JS 中的数组是可变的,这说明在创建数组之后还可以修改数组的内容。这意味着要拷贝一个数组,咱们不能简单地将旧数组分配给一个新变量,它也是一个数组。如果这样做,它们将共享相同的引用,并且在更改一个变量之后,另一个变量也将受到更改的影响。这就是我们需要克隆这个数组的原因。接着来看看一些关于拷贝和克隆数组的有趣方法和技巧。技巧 1 - 使用Array.sl..转载 2021-01-04 18:02:31 · 123 阅读 · 0 评论 -
javascript中的modules、import和export
在互联网的洪荒时代,网站主要用 HTML和 CSS 开发的。如果将 JavaScript 加载到页面中,通常是以小片段的形式提供效果和交互,一般会把所有的 JavaScript 代码全都写在一个文件中,并加载到一个script标签中。尽管可以把 JavaScript 拆分为多个文件,但是所有的变量和函数仍然会被添加到全局作用域中。但是后来 JavaScript 在浏览器中发挥着重要的作用,迫切需要使用第三方代码来完成常见任务,并且需要把代码分解为模块化的文件,避免污染全局命名空间。ECMAS...转载 2020-12-10 09:36:25 · 1074 阅读 · 0 评论 -
深入浅析Service Workers
本篇文章给大家介绍一下JavaScript API - Service Workers。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。相关推荐:《编程入门》service worker 是什么Service Worker 是 Chrome 团队提出和力推的一个 WEB API,用于给 web 应用提供高级的可持续的后台处理能力。该 WEB API 标准起草于 2013 年,于 2014 年纳入 W3C WEB 标准草案,当前还在草案阶段。Service Worker 最转载 2020-12-08 09:42:27 · 290 阅读 · 0 评论 -
如何使用 map 代替纯 JavaScript 对象?
JavaScript 普通对象{key: 'value'}可用于保存结构化数据。但是我发现很烦人的一件事:对象的键必须是字符串(或很少使用的符号)。如果用数字作键会怎样?在这种情况下没有错误:constnames={1:'One',2:'Two',};Object.keys(names);//=>['1','2']JavaScript 只是将对象的键隐式转换为字符串。这是一件棘手的事,因为你失去了类型的一致性。在本文中,我将介绍 ES2...转载 2020-12-07 09:31:09 · 231 阅读 · 0 评论 -
JS中的工厂函数和构造函数
当谈到JavaScript语言与其他编程语言相比时,你可能会听到一些令人困惑东西,其中之一是工厂函数和构造函数。工厂函数所谓工厂函数,就是指这些内建函数都是类对象,当你调用他们时,实际上是创建了一个类实例”。意思就是当我调用这个函数,实际上是先利用类创建了一个对象,然后返回这个对象。由于 Javascript 本身不是严格的面向对象的语言(不包含类),实际上来说,Javascript 并没有严格的“工厂函数”,但是在 Javascript中,我们能利用函数模拟类。来看下面一个例子:func..转载 2020-12-03 09:19:55 · 3882 阅读 · 1 评论 -
JavaScript中处理异步的几种方式
在网站开发中,异步事件是项目必然需要处理的一个环节,也因为前端框架的兴起,通过框架实现的 SPA 已经是快速建构网站的标配了,一部获取数据也就成了不可或缺的一环;本文来就讲一讲 JavaScript 中异步的处理方式。同步?异步?首先当然要先理解一下同步及异步分别是指什么。这两个名词对于初学者来说总是让人感到困惑的,毕竟从中文字面上的意思很容易让人反过来理解,从信息科学的角度来说,同步 指的是一件一件做事,而 异步 则是很多事情在一起并行的处理。比如我们去银行办理业务,在窗口前排队就是同..转载 2020-11-26 09:24:27 · 719 阅读 · 0 评论 -
理解对象原型和原型链
本篇文章带大家介绍一下JavaScript中的对象原型和原型链。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。对象原型相信大家都这样用过 map:letarr=[0,1,2]letdoubleArr=arr.map(c=>c*2)console.log(doubleArr)//0,2,4不知道你有没有想过,arr本身并没有设定map属性,那为什么可以用map这个函数呢?把它打印出来看看:console...转载 2020-11-25 09:33:33 · 286 阅读 · 0 评论 -
8个编写JS代码的小技巧和窍门
下面js教程栏目给大家介绍8个编写javascript代码的技巧和窍门。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。推荐教程:《JavaScript视频教程》1. 生成指定区间内的数字有时候需要创建在某个数字范围内的数组。比如在选择生日时。以下是最简单的实现方法。letstart=1900,end=2000;[...newArray(end+1).keys()].slice(start);//[1900,1901,...,20...转载 2020-11-19 09:21:44 · 371 阅读 · 0 评论 -
ES6中的for ... of循环和可迭代对象
推荐教程:《JavaScript视频教程》本文将研究 ES6 的for ... of循环。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。旧方法在过去,有两种方法可以遍历 javascript。首先是经典的for i循环,它使你可以遍历数组或可索引的且有length属性的任何对象。for(i=0;i<things.length;i++){varthing=things[i]/*...*/}其次是for ......转载 2020-11-18 09:17:55 · 284 阅读 · 0 评论 -
深入讨论JavaScript中Set对象如何让代码更快
我确信有很多开发人员坚持使用基本的全局对象:数字,字符串,对象,数组和布尔值。对于许多用例,这些都是需要的。 但是如果想让你的代码尽可能快速和可扩展,那么这些基本类型并不总是足够好。在本文中,我们将讨论JS 中Set对象如何让代码更快— 特别扩展性方便。Array和Set工作方式存在大量的交叉。但是使用Set会比Array在代码运行速度更有优势。Set 有何不同最根本的区别是数组是一个索引集合,这说明数组中的数据值按索引排序。constarr=[A,B,C,D];co...转载 2020-11-17 09:20:15 · 214 阅读 · 0 评论 -
JS Math对象的10 个实用方法
推荐教程:《JavaScript视频教程》JavaScript中的math对让我们能够对执行一些数学操作。 它具有数学常数和函数的属性和方法。 在今天的文章中将介绍Math对象的一些有用方法。1. Math.min()Math.min()是 JS 数学库中的函数,用于将所有传递的值中的最小值返回给该方法。Math.min(0,150,30,20,-8,-200)//-2002. Math.max()Math.max()方法可返回两个指定的数中带有较大的值的那个...转载 2020-11-11 09:26:57 · 1015 阅读 · 0 评论 -
JS中判断变量是否为数字方法
推荐教程:《JavaScript视频教程》JavaScript 是一种动态类型语言,这意味着解释器在运行时确定变量的类型。实际上,这也允许我们在相同的代码中使用相同的变量来存储不同类型的数据。如果没有文档和一致性,我们在使用代码时并不总是知道变量的类型。当我们期望一个变量是数字时,对字符串或数组进行操作可能会在代码中导致奇怪的结果。在本文中,我们将会介绍一些判断变量是否为数字的函数。像"10"之类的数字的字符串不应被接受。 在JavaScript中,诸如NaN,Infinity和-Infin..转载 2020-11-06 09:17:22 · 3634 阅读 · 0 评论 -
10个值得了解的Chrome开发工具和技巧
1. 模拟慢速网络和慢速设备我们可能习惯了在城市的网速,那是杠杠的,并不意味网速在中国哪个都一样的,在一些偏远地方,网速依然慢的可怜,所以有时候我们所做的产品是需要考虑网速慢的情况的,那怎么模拟呢?打开谷个浏览器的performance选项卡,然后单击右上角的齿轮图标就可以看到Newwork和CPU的模拟情况。2. 颜色选择器单击表示颜色的小方块,弹出颜色选择器。启用颜色选择器后,可以将网页悬停并使用颜色选择器来获取该像素的颜色。弹出颜色选择器的小方块还有...转载 2020-11-05 09:14:04 · 251 阅读 · 1 评论 -
javaScript面向对象的三个基本特征介绍
了解过面向对象的同学应该都知道,面向对象三个基本特征是:封装、继承、多态,但是对于这三个词具体可能不太了解。对于前端来讲接触最多的可能就是封装与继承,对于多态来说可能就不是那么了解了。封装在说封装之先了解一下封装到底是什么?什么是封装封装:将对象运行所需的资源封装在程序对象中——基本上,是方法和数据。对象是“公布其接口”。其他附加到这些接口上的对象不需要关心对象实现的方法即可使用这个对象。这个概念就是“不要告诉我你是怎么做的,只要做就可以了。”对象可以看作是一个自我包含的原子。对象接口包..转载 2020-11-02 09:31:15 · 723 阅读 · 0 评论 -
分享5个JS函数的高级技巧
函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。函数对任何一门语言来说都是一个核心的概念,在javascript中更是如此。本文将深入介绍函数的5个高级技巧。作用域安全的构造函数构造函数其实就是一个使用new操作符调用的函数function Person(name,age,job){ this.name=name; this.age=age; this.job=job;}var person=new Person('match',28..转载 2020-10-29 17:58:36 · 208 阅读 · 0 评论 -
理解JavaScript中的原型和继承
本文主要讲了原型如何在JavaScript中工作,以及如何通过[Prototype]所有对象共享的隐藏属性链接对象属性和方法;以及如何创建自定义构造函数以及原型继承如何工作以传递属性和方法值。介绍JavaScript是一种基于原型的语言,这意味着对象属性和方法可以通过具有克隆和扩展能力的通用对象共享。这被称为原型继承,与类继承不同。在流行的面向对象编程语言中,JavaScript是相对独特的,因为其他著名的语言,如PHP、Python和Java都是基于类的语言,它们将类定义为对象的蓝图。在文转载 2020-09-23 09:26:33 · 138 阅读 · 0 评论 -
javascript中函数的5个高级技巧
函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。函数对任何一门语言来说都是一个核心的概念,在javascript中更是如此。本文将深入介绍函数的5个高级技巧。作用域安全的构造函数构造函数其实就是一个使用new操作符调用的函数function Person(name,age,job){ this.name=name; this.age=age; this.job=job;}var person=new Person('match',28转载 2020-09-22 09:24:02 · 146 阅读 · 0 评论 -
如何构建可运行的JavaScript规范
编程不仅仅是给计算机下达如何完成一项任务的指令,它还包括以一种精确的方式与他人交流思想,甚至是与未来的自己。这样的交流可以有多个目标,也许是为了共享信息,或者只是为了更容易地修改—如果你不理解或不记得很久以前做过什么,那么就很难修改。当我们编写软件时,我们还需要确保代码具有预期的功能。虽然有定义语义的正式方法,但是最简单、最快速(但不那么严格)的方法是将该功能投入使用,并查看它是否产生预期的结果。大多数开发人员都熟悉这些实践:代码文档作为注释来明确代码块的目标,以及一系列测试来确保函数给出所需的转载 2020-09-21 10:00:11 · 111 阅读 · 0 评论 -
JavaScript中Switch语句的使用方法
除了if ... else之外,JavaScript还有一个称为switch语句的功能。 switch是一种条件语句,它将针对多种可能的情况评估表达式,并根据匹配的情况执行一个或多个代码块。 switch语句与包含许多其他if块的条件语句密切相关,并且它们通常可以互换使用。在本教程中,我们将学习如何使用switch语句,以及如何使用相关的关键字case,break和default。 最后,我们将介绍如何在switch语句中使用多个case。Switchswitch语句计算表达式并作为匹配大小转载 2020-09-19 09:59:01 · 1579 阅读 · 0 评论 -
JavaScript常用基础算法
一个算法只是一个把确定的数据结构的输入转化为一个确定的数据结构的输出的function。算法内在的逻辑决定了如何转换。基础算法一、排序1、冒泡排序//冒泡排序function bubbleSort(arr) { for(var i = 1, len = arr.length; i < len - 1; ++i) { for(var j = 0; j <= len - i; ++j) { if (arr[j] > arr[j + 1转载 2020-09-14 09:30:53 · 1013 阅读 · 0 评论 -
javascript掌握正则表达式
正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。我想正则表达式之所以难,主要体现在以下几个方面:1)正则表达式的符号晦涩难懂2)不支持排版(至少javascript目前还不支持)3)不能设置断点,不能跟踪调试4)没有真正的标准,不同工具所支持的正则表达式有许多细节上的差异正则表达式本质上是一整套的处理字符串的模型,帮助人们利用简短的表达式来实现复杂的算法。早期转载 2020-09-08 11:45:38 · 112 阅读 · 0 评论 -
理解JavaScript中的变量、范围和提升
变量是许多编程语言的基本组成部分,也是新手需要学习的第一个也是最重要的概念。JavaScript中有许多不同的变量属性,以及命名变量时必须遵循的一些规则。在JavaScript中,有三个关键字用于声明变量——var、let和const——每个关键字都会影响代码对变量的不同解释。本教程将介绍什么是变量,如何声明和命名变量,并进一步研究var、let和const之间的区别。我们还将回顾提升的影响以及全局和局部作用域对变量行为的重要性。理解变量变量是用于存储值的命名容器。我们可能多次引用的一条信息转载 2020-09-05 15:10:10 · 174 阅读 · 0 评论 -
JS 变量的作用域及闭包
与闭包有关的概念:变量的作用域和变量的生存周期。下面本篇文章就来给大家介绍一下JS中变量的作用域及闭包,有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。一、变量的作用域1、变量的作用域指变量有效的范围,与变量定义的位置密切相关,作用域是从空间的角度来描述变量的,也可以理解为变量的可见性。在某个范围内变量是可见的,也就是说,变量是可用的。2、按照作用域的不同,变量可分为全局变量和局部变量。● 全局变量:在全局环境中声明的变量● 局部变量:在函数中声明的变量● 当函数转载 2020-09-04 09:45:12 · 182 阅读 · 0 评论 -
javascript面向对象设计
javascript和java语言不一样,它没有类这个说法,更没有子类父类一说,所以它所谓的继承机制,也是和其他语言完全不同的。创建对象三种方式1.最简单的方式,创建一个object对象,然后为它添加属性和方法var person=new object();person.name="zhangsan";person.age=20;person.sayName=function(){alert(this.name);};2.工厂方式本质上就是对上述最简单的方式的包装。fu转载 2020-08-31 09:28:25 · 152 阅读 · 0 评论 -
JavaScript基础--引用数据类型 (对象)
本文主要讲述了JavaScript对象的属性和对象的引用,以及对象的读取、赋值、删除和获取对象键名的操作。1、对象对象就是一组 “键值对”(key-value)的集合,是一种无序的复合数据集合。var obj = { foo: 'Hello', bar: 'World', 100: true,};obj.foo // 'Hello'obj[100] //true 如果键名是数值,会被自动转为字符串(等价于obj.['100'] )2、属性和方法对转载 2020-08-29 09:28:20 · 209 阅读 · 0 评论 -
18个用于创建漂亮图表的JavaScript库推荐
几乎不可能想象没有图形和图表的任何仪表盘。它们快速有效地呈现复杂的统计数据。此外,一个好的图表还可以增强网站的整体设计。在本文中,我将向您展示一些用于图形和图表的最佳JavaScript库。这些库将帮助您为将来的项目创建漂亮的、可自定义的图表。虽然大多数库是免费的和开源的,但其中一些库提供了带有附加功能的付费版本。d3.js-数据驱动文档当我们想到今天的图表时,d3.js是第一个出现的名字。作为一个开源项目,d3.js无疑带来了许多功能强大的特性,这些特性在大多数现有库中都是缺失的。动态转载 2020-08-28 09:41:23 · 639 阅读 · 0 评论 -
聊聊JavaScript作用域
几乎所有的语言都有作用域的概念,简单的说,作用域就是变量和函数的可访问范围,即作用域控制在变量和函数的可见性和生命周期。变量作用域是程序源代码中定义这个变量的区域。1、全局变量拥有全局作用域,在 JS 代码中的任何地方都是有定义的。2、在函数内声明的变量只在函数体内有定义。函数参数也只在函数体内有定义。3、在函数体内,局部变量的优先级高于同名的全局变量。如果在函数体内声明一个局部变量或者函数参数中带有的变量和全局变量重名,那么全局变量就被局部变量所遮盖。var scope =转载 2020-08-19 09:52:45 · 138 阅读 · 0 评论 -
理解JavaScript中的语法和代码结构
所有编程语言都必须遵守特定的规则才能运行。 确定编程语言的正确结构的这组规则称为语法。 许多编程语言主要由具有语法变化的类似概念组成。在本教程中,我们将介绍JavaScript语法和代码结构的许多规则和约定。功能性和可读性在开始使用JavaScript时,功能性和可读性是关注语法的两个重要原因。有些语法规则是JavaScript功能所必需的。如果不遵循它们,控制台将抛出一个错误,脚本将停止执行。考虑“Hello,World!”中的语法错误。程序:// Example of a转载 2020-08-08 09:55:35 · 383 阅读 · 0 评论 -
深入解析Javascript闭包及实现方法
什么是闭包和闭包的几种写法和用法1、什么是闭包闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。闭包的特点:1. 作为一个函数变量的一个引用,当函数返回时,其处于激活状态。2. 一个闭包就是当一个函数返回时,一个没有释放资源的栈区。简单的说,Javascript允许使用内部函数—即函数定义和函数表达式位于另一个函数的函数体内。而且,这些内部函数可以访问它们所在的外部函数中声明的所有局部变量、参数和声明的其他内部..转载 2020-08-06 09:58:47 · 276 阅读 · 1 评论 -
了解JavaScript中的类
javascript是一种基于原型的语言,javascript中的每个对象都有一个名为[[原型]]的隐藏内部属性,可用于扩展对象属性和方法。直到最近,勤奋的开发人员使用构造函数来模仿JavaScript中面向对象的设计模式。语言规范ECMAScript 2015(通常称为ES6)引入了JavaScript语言的类。JavaScript中的类实际上并没有提供额外的功能,并且通常被描述为提供原型和继承的“语法糖”,因为它们提供了更清晰,更优雅的语法。由于其他编程语言使用类,因此JavaScript中的类语法转载 2020-08-05 10:04:23 · 137 阅读 · 0 评论 -
详解Javascript对象原型
JavaScript 常被描述为一种基于原型的语言 (prototype-based language)——每个对象拥有一个原型对象,对象以其原型为模板、从原型继承方法和属性。原型对象也可能拥有原型,并从中继承方法和属性,一层一层、以此类推。这种关系常被称为原型链 (prototype chain),它解释了为何一个对象会拥有定义在其他对象中的属性和方法。对象原型Prototype1、方法过载创建一个小猫构造函数,代码如下:function Cat(name,color){this.转载 2020-08-04 09:48:01 · 158 阅读 · 0 评论 -
JavaScript中的JSON和JSONP
简单地使用json并不能支持跨域资源请求,为了解决这个问题,需要采用jsonp数据交互协议。众所周知,js文件的调用不受跨域与否的限制,因此如果想通过纯web端跨域访问数据,只能在远程服务器上设法将json数据封装进js格式的文件中,供客户端调用和进一步处理,这就是jsonp协议的原理。JSON 和 JSONPJSONP是一种发送JSON数据的方法,无需担心跨域问题。JSONP不使用该XMLHttpRequest对象。JSONP使用<script>标签代替。由于跨域策略,从另一个域转载 2020-08-03 10:05:48 · 176 阅读 · 0 评论 -
JavaScript将Set(集合)转换为Array数组
在JavaScript中,想要将Set(集合)转换为Array数组,可以通过以下方式实现。方法1:使用Array.from()方法Array.from()方法从对象或可迭代对象(如Map,Set等)返回一个新数组。语法:Array.from(arrayLike object);示例:<script> const set = new Set(['welcome', 'you','!']); console.log(set); c..转载 2020-07-14 09:32:54 · 16644 阅读 · 0 评论 -
使用JavaScript清除div的内容
JavaScript提供清除div内容的功能,想要执行此功能有两种方法:一种是使用innerHTML属性,另一种是使用firstChild属性和removeChild()方法。下面本篇文章就来给大家介绍一下,希望对大家有所帮助。方法1:使用innerHTML属性HTML DOM对象的innerHTML属性用于设置或返回元素的HTML内容。只有将innerHTML属性设置为none就可清除div的内容。<!DOCTYPE html><html> <head&转载 2020-07-13 18:23:33 · 4428 阅读 · 0 评论