#Asc

如何用 JavaScript 实现一个数组惰性求值库

在编程语言理论中,惰性求值(英语:LazyEvaluation),又译为惰性计算、懒惰求值,也称为传需求调用(call-by-need),是一个计算机编程中的一个概念,它的目的是要最小化计算机要做的工作。它有两个相关而又有区别的含意,可以表示为“延迟求值”和“最小化求值”,除可以得到性能的提升外,惰性计算的最重要的好处...

Javascript 实践中的命令模式

Encapsulatearequestasanobject,therebylettingyouparameterizeotherobjectswithdifferentrequests,queueorlogrequests,andsupportundoableoperations.“「命令模式」将「请求」封装成对象,以...

JavaScript 和 Node.js 中的“事件驱动”是什么意思?

事件驱动架构是建立在软件开发中一种通用模式上的,这种模式被称为发布-订阅或观察者模式。在事件驱动架构中,至少有两个参与者:主题(subject)和观察者(observer)。主题就像调频收音机一样,向有兴趣收听该主题所说内容的观察者进行广播。观察者可能只有一个,也可能有一百个,这都没有关系,只要主题有一些要广播的消息就...

如何制作自己的原生 JavaScript 路由

当你想到路由时,通常会想到类似 react 之类的库。但实际上,这些库和框架仍然使用 vanilla JavaScript。那么该怎么实现呢?我希望这个“JavaScript 路由教程”能够帮你了解如何用原生 js 写出自己的路由。 我遇到...

JavaScript中的类型检查有点麻烦

js 的动态类型有好有坏。好的一面,不必指明变量的类型。不好的是,咱们永远无法确定变量的类型。typeof运算符可以确定 js 中的6种类型:typeof10;//=>'number'typeof'Hello';//=>'string'typeoffalse;//=>'b...

6种JavaScript继承方式及优缺点

友情提示:想要更好的理解js继承方式,须了解构造函数、原型对象、实例化对象、原型链等概念第一种:原型链继承利用原型链的特点进行继承functionParent(){  this.name='web前端';  this.type=['js','html','css'];}Paren...

用 JavaScript 学习算法复杂度

在本文中,我们将探讨“二次方”和“nlog(n)”等术语在算法中的含义。在后面的例子中,我将引用这两个数组,一个包含5个元素,另一个包含50个元素。我还会用到 JavaScript 中方便的 performanceAPI 来衡量执行时间的差异。constsmArr=[5,3,2,...

几道面试题来看JavaScript执行机制

前面的话根据 JavaScript 的运行环境,锁定它为单线程,任务需要排队执行,如果网站资源比较大,这样会导致浏览器加载会很慢,但实际上并没有,大家肯定立刻想到了同步和异步。所谓的同步和异步也是在排队,只是排队的地方不同。 同步和异步同步任务进入主线程排队,异步任务进入事件队列中排队同步...

如何使用JavaScript检查数组是否为空?

方法一:使用Array.isArray()方法和array.length属性可以通过array.isarray()方法检查该数组是否确实是一个数组。如果作为参数传递的对象是数组,则此方法返回true。它还检查数组是否为“undefined”或为“null”。使用array.length属性检查数组是否为空;此属性返回数...

JavaScript进度管理

我们写程序的时候会经常遇到显示进度的需求,如加载进度、上传进度等。最常见的实现方式是通过记录 已完成数量(loadedCount) 和 总数量(totalCount),然后算一下就能得到进度了。这种方式简单粗暴,容易实现,但不好扩展,必须有个地方维护所有 loadedCount&...
代码星球 ·2020-12-24

JavaScript 私有类字段和 TypeScript 私有修饰符

在过去,JavaScript没有保护变量不受访问的原生机制,当然除非是典型闭包。闭包是JavaScript中许多类似于私有模式(如流行的模块模式)的基础。但是,近年来ECMAScript2015类被使用后,开发人员感到需要对类成员的隐私进行更多控制。类字段提案(在撰写本文时处于第3阶段)试图通过引入 私有类字...

JavaScript中,数组和对象的遍历方法总结

循环遍历是写程序很频繁的操作,JavaScript 提供了很多方法来实现。这篇文章将分别总结数组和对象的遍历方法,新手可以通过本文串联起学过的知识。 方法一:for循环for循环是使用最多,也是性能优化最好的一种遍历方式。vararr=["a","b","c"];for(vari=0;i<ar...

如何自己实现 JavaScript 的 new 操作符?

new 大家肯定都不陌生,单身没有对象的时候就 new 一个,很方便。那么它在创建实例的时候,具体做了哪些操作呢?今天我们就来一起分析一下。 在介绍 new 之前,必须要知道什么是构造函数。构造函数和普通函数在写法上没有任何区别,当一个函数通过 ne...

Javascript 中 cookie 操作方式

Cookie 为Web应用程序保存用户相关信息提供了一种有用的方法。例如,当用户访问咱们的站点时,可以利用 Cookie 保存用户首选项或其他信息,这样,当用户下次再访问咱们的站点时,应用程序就可以检索以前保存的信息。 Cookie 是一小段文本信息,伴随着用户请求和页...

javascript实例教程:使用canvas技术模仿echarts柱状图

canvas画布是html5中新增的标签,可以通过js操作canvas绘图API在网页中绘制图像。百度开发了一个开源的可视化图表库ECharts,功能非常强大,可以实现折线图、柱状图、散点图、饼图、K线图、地图等多种图表。很多项目都有使用过ECharts开发过图表功能。本实例教程使用原生js教你开发一个仿ECharts...
首页上一页...3132333435...下一页尾页