js中的arguments-编程思维

在 JavaScript 中, arguments 是一个特殊的对象,它代表了函数调用时传递的参数列表。它可以在函数内部访问,用于获取传递给函数的实际参数值。 arguments 对象包含了函数调用时传递的所有参数,无论是否在函数定义时明确声明这些参数。它是一个类数组对象,可以通过索引访问其中的参数值。可以使用 arguments.length 属性获取传递的参数个数。   下面是关于 ar

js中的事件监听-编程思维

JavaScript的事件监听是一种机制,用于在HTML文档中的元素上注册事件处理程序,以便在特定事件发生时执行相应的JavaScript代码。 事件监听的基本思想是将事件处理程序(也称为事件回调函数)绑定到特定的事件上。所谓特定的事件是当用户与页面进行交互时,比如点击按钮、键盘输入、鼠标移动等,浏览器会生成的相应事件。当该事件发生时,浏览器会调用相应的事件处理程序来执行特定的操作。 以下是一个

threejs绘制球体-编程思维

threejs绘制球体 在Three.js中,可以使用geometry对象和geometryMaterial对象来创建和渲染球体几何体。下面是一个绘制球体的示例代码: // 创建一个立方体几何体 var cubeGeometry = new THREE.BoxGeometry( 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5

快捷转换/互转 markdown 文档和 typescript/typedoc 注释-编程思维

背景 作为文档工具人,经常需要把代码里面的注释转换成语义化的 Markdown 文档,有时也需要进行反向操作。以前是写正则表达式全局匹配,时间长了这种方式也变得繁琐乏味。所以写了脚本来互转,增加一些便捷性。 解决方案 注释转 Markdown 下载地址:https://github.com/mazeyqian/go-gin-gee/releases/tag/v1.2.0 操作步骤: 跟自身系统

threejs创建圆柱体-编程思维

threejs创建圆柱体   创建一个几何体(geometry):使用Three.js的几何体类创建一个几何体,该类将定义您的几何体的形状和大小。例如,您可以使用以下代码创建一个圆柱体: var geometry = new THREE.CylinderGeometry(5, 32, 32);   这将创建一个高度为5、半径为32的圆柱体。 创建一个网格(mesh):使用Thre

js中的undefined 与 null-编程思维

在 JavaScript 中, undefined 和 null 是两个特殊的值,用于表示缺失或空值。 undefined 是一个表示未定义或未赋值的原始值。它在以下情况下使用: 1. 变量声明了但未初始化时,默认为 undefined 。 let x; console.log(x); // undefined     2. 访问对象属性或数组元素时,如果该属性或元素不存在,则返回

js函数中的属性-编程思维

当定义和调用函数时,JavaScript 函数对象会自动具有一些特定的属性,以下是一些常见的属性和方法。 1. arguments : arguments 是一个类数组对象,它包含了函数调用时传递的参数。它允许你在函数内部访问传递给函数的参数列表,即使在函数定义时未明确声明这些参数。可以通过索引访问 arguments 对象中的参数值,也可以使用 arguments.length 获取传递的参数

js中的偏函数-编程思维

偏函数是一种在函数式编程中常见的编程技巧。在 JavaScript 中,偏函数指的是一种创建新函数的方法,通过预设一个或多个参数,从而实现对原始函数的封装和定制。偏函数的主要作用是降低函数调用时的参数复杂度,使函数更具有可重用性。 在 JavaScript 中,我们可以通过闭包来实现偏函数。以下是一个简单的偏函数实现: function partial(fn, ...presetArgs) {

js中的纯函数-编程思维

在JavaScript中,纯函数是指在相同的输入下,始终产生相同的输出,并且没有副作用的函数。纯函数不会修改或依赖于函数之外的状态,也不会对外部环境产生任何可观察的影响。   以下是纯函数的特点: 1. 确定性 :对于相同的输入,纯函数总是产生相同的输出。这意味着,如果你用相同的参数多次调用纯函数,它将始终返回相同的结果。2. 无副作用 :纯函数不会修改其外部环境,包括全局变量、

如何优雅的处理 react 表单-编程思维

如何优雅的处理 React 表单 HTML 表单处理本身是一件比较简单的事情,但是当我们对交互的要求高了之后,他就会变得异常复杂——尤其是在 React 中使用时,我们不得不创建冗长的代码去维护各种状态。 那么有没有什么现成的开源方案可以供我们使用,最终优雅的创建 React 表单呢? 本文不会详细阐述每个库的用法、api,只是向大家介绍整合方案 如果我们直接写代码,大概率表单组件最后会是这样

promise及异步编程async await-编程思维

前置说明 ECMAScript 6 新增了正式的 Promise(期约)引用类型,支持优雅地定义和组织异步逻辑。接下来几个版本增加了使用 async 和 await 关键字定义异步函数的机制 JavaScript 是单线程事件循环模型。异步行为是为了优化因计算量大而时间长的操作,只要你不想为等待某个异步操作而阻塞线程执行,那么任何时候都可以使用 同步与异步 JS中同步任务会立即执行并放入调用栈中

js判断用户是否离开当前页面-编程思维

简介 VisibilityChange 事件;用于判断用户是否离开当前页面 Code // 页面的 visibility 属性可能返回三种状态 // prerender,visible 和 hidden let pageVisibility = document.visibilityState; // 监听 visibility change 事件 document.addEventL

js中的箭头函数-编程思维

在JavaScript中,箭头函数是一种简化的函数语法,它在ES6(ECMAScript 2015)引入。箭头函数的语法比传统的function表达式更简洁,同时还有一些特性,例如继承外部作用域的this值。 箭头函数的基本语法如下: (param1, param2, ..., paramN) => { statements } (param1, param2, ..., paramN)

input的实时监控-编程思维

之前表单的改变一直使用的是change事件,可能使用在select上比较多,所以一直没注意过原来input和textarea不是实时触发的 随后查了下资料change事件—触发该事件必须满足两个条件:   当前对象属性改变,并且是由键盘或鼠标事件激发的(通过脚本改变对象的属性是不会触发的,当然可以通过脚本手动执行触发) 当前对象失去焦点(onblur)后才会触发         如果我们要实

在js中如何判断两个对象是否相等-编程思维

在JavaScript中,判断两个对象是否相等有多种方法,取决于你对 相等 的定义以及对象属性的类型。以下是几种常见的方法:   1. 严格相等运算符 (===) 使用 === 运算符可以比较两个对象是否引用同一个对象。如果两个变量引用了同一个对象,则它们是相等的,否则它们是不相等的。例如: const obj1 = { a: 1 }; const obj2 = { a: 1 }; cons