使用 Three.js 实现跳一跳游戏

跳一跳是微信小程序[3]的一个小游戏。长按屏幕让小人蓄力跳跃,进行游玩。按照小人跳跃盒子的数量,以及特殊盒子加分项计算得分。,十分简单:长按鼠标蓄力、放手,方块就会从一个盒子跳到另一个盒子。然而就是这...
3年前
220

如何写一个 JS 运行时

随着 Node.js 的出现和不断发展,其他新的 JS 运行时也穷出不断,Deno、Just、Bun等等。本文简单介绍一下如何写一个 JS 运行时,相比操作系统、编译器来说,写一个 JS 运行时理论上...
3年前
310

React 的一些优秀安全实践

,React.js、Vue.js 这些现代的前端框架默认已经对安全做了非常多的考虑,但是这仍然不能阻碍我们写出一些安全漏洞 。。。因为框架永远不能完全限制我们编程的灵活性,只要有一定的灵活性存在就意味...
3年前
440

js局部变量是什么

,说明,1、局部作用域声明的变量称为局部变量(函数内部定义的变量),2、局部变量只能能使用局部变量。,var在函数内部声明的变量是局部变量。,3、函数的形参实际上是局部变量。函数形参也可视为局部变量...
3年前
130

CSS中in JS是什么意思

,说明,1、CSS中in JS,意思就是使用js语言写css,完全不需要些单独的css文件,所有的css代码全部放在组件内部,以实现css的模块化。,2、CSS in JS其实是一种编写思想。,目前已...
3年前
380

js switch语句的特性

,说明,1、switch语句可用于所有的数据类型(在许多语言中,它只能用于数值),因此可以使用字符串甚至对象。,2、条件值不一定是常量,或者是一个变量或者一个表达式。,实例,以上就是js switch...
3年前
190

js全局变量是什么

,说明,1、全局作用域声明的变量称为全局变量(函数外部定义的变量)。,2、代码的任何位置都可以使用全局变量,var声明的变量在全局作用域是全局变量。,特殊情况下,函数中不使用var声明的变量也是全局变...
3年前
180

图解 Node.js 的核心 Event-loop

,这次我们来聊聊 Node.js 里面涉及到的一个核心概念:event-loop 。只有理解了它,才能明白 node 的进程模型,也才能明白异步调用在实现层面是什么样子的,更能明白当同步代码和异步代码...
4年前
420

js引用计数算法是什么

,说明,1、引用计数算法定义内存不再使用的标准很简单,就是看一个对象是否有指向它的引用。,2、如果没有其他对象指向它了,说明该对象已经不再需要了。,实例,以上就是js引用计数算法的介绍,希望对大家有所...
4年前
360

js内存的生命周期介绍

,说明,1、内存分配:当我们申明变量、函数、对象的时候,系统会自动为他们分配内存,2、内存使用:即读写内存,也就是使用变量、函数等,3、内存回收:使用完毕,由垃圾回收机制自动回收不再使用的内存,实例...
4年前
330

js代理模式是什么

,说明,1、为其他对象提供一种代理,便以控制对这个对象的访问,不能直接访问目标对象。,2、代理模式最基本的形式是对访问进行控制,而本体对象则负责执行所分派的那个对象的函数或者类。,优点,可以保护对象...
4年前
280

前端如何实现新手引导功能?

在产品发布新版本或者有新功能上线时,经常需要新手引导功能来引导用户了解应用。下面就来分享几个开箱即用的新手引导组件库,帮你快速实现新手引导功能!,Intro.js 是一个使用广泛的产品引导库,它在 G...
4年前
610

js中co模块是什么

,说明,1、co模块可以帮助我们完成异步过程的自动执行。,co模块是基于Promise对象的。不需要制作Generator函数的执行器。,2、co函数返回Promise对象。,因此可以通过then添加...
4年前
240

如何优雅地 Hack 用户的代码

前言:做基础技术的时候,会经常碰到一个问题就是如何让自己提供的代码对用户少侵入,无感。比如我提供了一个 SDK 收集 Node.js 进程的 HTTP 请求耗时,最简单的方式就是给用户提供一个 req...
4年前
150

js中如何填充字符串

,说明,1、padStart()用于头部补充,padEnd()用于尾部补充,将指定的字符串填充到字符串的头部或尾部,返回新的字符串。,2、接受两个参数,第一个参数是字符串补全生效的长度,第二个参数是字...
4年前
450

js中while语句如何理解

,1、while语句是一种先测试循环语句,即先检测退出条件,再执行循环体内的代码。,2、while循环体内的代码有可能不会执行。,下面是 while 循环的语法:,实例,在这个例子中,变量 xhs 从...
4年前
380

js中UMD规范的介绍

,说明,1、UMD是AMD和CommonJS的结合。,CommonJS模块是根据服务器第一原则开发的。选择同步加载,其模块不需要包装。,通用模块定义,umd兼容commonjs和amd规范,这意味着u...
4年前
220

js中new关键字的使用过程

,说明,1、new构建函数,在内存中创建一个空对象。,2、this指向刚刚创建的空对象,在构造函数中执行代码,并为空对象添加属性和方法。,3、返回到这个对象。,实例,以上就是js中new关键字的使用过...
4年前
270

js构造函数的使用注意

,说明,1、构造函数名的首字母必须大写。构造函数无需return即可返回结果。,2、调用结构函数必须使用new关键词,只需new结构函数名()就可以创建对象。,3、在构造函数中的属性和方法之前必须添加...
4年前
340

如何追踪 JS 对象是否被 GC

在自带垃圾回收的语言中,开发者往往不需要过多地关注内存管理。但是不代表我们可以完全忽略它。因为语言引擎的垃圾回收是有一定的判断规则的,如果我们的变量所引用的内存没有符合这个规则,那么引擎无无法对这些内...
4年前
170

聊聊 JS 获取 GIF 总帧数

有一个Gif图片,我们想要获取它的总帧数,超过一定帧数的图片告知用户不可上传,在服务端有很多现成的库可以使用,这种做法不是很友好,前端需要先将gif上传至服务端,服务端解析完毕后将结果返回,大大降低了...
4年前
560

使用 Node.js 构建博客 API

,在本文中,我们将使用 Node.js 构建一个简单的博客 API。 API代表“应用程序编程接口”,它允许不同的软件系统相互通信。 在这种情况下,我们的博客 API 将允许我们创建、读取、更新和删除...
4年前
760

手写 Bind:处理 New 的情况

,大家好,我是前端西瓜哥。,之前写了一篇关于​​ JS 中 bind 方法的实现​​的文章,并给出了实现:,但没有处理 通过 new 创建实例 的情况。,因为很少会遇到给 bind 返回的函数做 ne...
4年前
240

js作用域链如何使用

,说明,1、只要是代码,至少有一个作用域。写在函数内部的局部作用域。,2、如果函数中有函数,在这个功能域中可以诞生另一个功能域。,3、根据内部函数可以访问外部函数变量的机制,用链式查找决定哪些数据可以...
4年前
240

js中this的六种模式

,说明 ,1、方法调用模式。,this总是指向调用方法的对象,this的方向与方法的调用位置有关,与方法的声明位置无关(箭头函数特殊);,2、函数调用。this指向window,当调用方法没有明确对象...
4年前
320

六款流行Web大前端框架以及特性

,随着web前端开发行业的不断发展,对于新涌现的技术和工具,我们要保持一颗好奇的心态。因为正确的使用web前端开发工具可以让我们web开发过程更快捷、更轻松,还能提高产品的开发质量。面对市面上诸多的w...
4年前
990