随笔分类 -  JavaScript

摘要:在用 TypeScript 的时候,我们常会类似下面的例子一样写~ ```ts enum ColorsEnum { white="#ffffff", black="#000000", } type Colors = keyof typeof ColorsEnum; ``` 其中最后一行等价于: `` 阅读全文
posted @ 2023-06-29 16:57 太轻描淡写了 阅读(479) 评论(0) 推荐(0) 编辑
摘要:官方地址:TypeScript 中文地址 TypeScript 常用类型 1. 类型注解 示例代码: let age: number = 18; 说明:代码中:number就是类型注解 类型注解约束了只能给该变量赋值该类型的值 错误演示: // 错误原因:将 string 类型的值赋值给了 numb 阅读全文
posted @ 2022-07-12 14:28 太轻描淡写了 阅读(458) 评论(0) 推荐(0) 编辑
摘要:输入一个值返回其数据类型 /** * 输入一个值,返回其数据类型 * @param {any} value * @return {string} 参数数据类型 */ function type(value) { return Object.prototype.toString.call(value) 阅读全文
posted @ 2022-05-31 16:04 太轻描淡写了 阅读(94) 评论(0) 推荐(0) 编辑
摘要:var 在ES5中,顶层对象的属性和全局变量是等价的,用 var 声明的变量既是全局变量,也是顶层变量; 注意:顶层对象,在浏览器环境指的是 window 对象,在 Node 指的是 global 对象; var x = 66; console.log(window.x); // 66 使用 var 阅读全文
posted @ 2022-04-21 16:41 太轻描淡写了 阅读(101) 评论(0) 推荐(0) 编辑
摘要:介绍 Proxy 是由 ES6 提供的一种机制,可以对外界的访问进行过滤和改写;可以理解成在目标对象之前架设一层 "拦截", 外界对这个对象的访问,都必须先通过这层拦截; Proxy 这个词的原意是代理,用在这里表示由它来“代理”某些操作,可以译为“代理器”; 用法 Proxy 为构造函数,用来生成 阅读全文
posted @ 2022-04-20 15:34 太轻描淡写了 阅读(546) 评论(0) 推荐(0) 编辑
摘要:Array.prototype.sort() Javascript 的 sort() 方法是最常用最快的方法; /** * 用原地算法对数组的元素进行排序 * @params compareFunction 可选 指定按某种顺序进行排列的函数 * @return Array 排序后的数组 * Arr 阅读全文
posted @ 2022-04-15 17:45 太轻描淡写了 阅读(110) 评论(0) 推荐(0) 编辑
摘要:事件流 JS 与 html 页面的交互是通过 DOM 事件实现的,那么什么是事件流?其实就是指页面接收事件的顺序;、 DOM 事件流包括三个阶段:事件捕获阶段,处于目标阶段,事件冒泡阶段; 用意下代码为简单示例说明: <!DOCTYPE html> <html lang="en"> <head> < 阅读全文
posted @ 2022-04-12 09:55 太轻描淡写了 阅读(200) 评论(0) 推荐(0) 编辑
摘要:Promise 是什么? Promise 是 ES6 提供的一种异步编程解决方案,解决了传统异步处理的回调金字塔问题; Promise 对象是一个构造函数,用来生成 Promise 实例; Promise 构成:console.dir(Promise); 可以看出,Promise 这个构造函数自己身 阅读全文
posted @ 2022-04-06 15:54 太轻描淡写了 阅读(359) 评论(0) 推荐(0) 编辑
摘要:for循环(两次嵌套) + 新数组 function deduplication(arr) { var flag = 0; // 创建一个新数组 var result = new Array(); // 遍历原数组 for(var i = 0; i < arr.length; i++) { flag 阅读全文
posted @ 2022-03-20 16:48 太轻描淡写了 阅读(51) 评论(0) 推荐(0) 编辑
摘要:语法 array.reduce(callback, [initValue]) reduce为数组中每个元素依次调用callback函数,不包括数组中未赋值或删除的元素 // 第一个参数,callback 接收四个参数 function(total, currentValue, index, arra 阅读全文
posted @ 2022-03-18 08:46 太轻描淡写了 阅读(94) 评论(0) 推荐(0) 编辑
摘要:利用 for...in 判断 function isEmptyObject(object) { for (let key in object) { return false; // 能遍历,对象不为空 } return true; } 思路:利用for in 循环遍历对象和对象原型上的可枚举属性; 阅读全文
posted @ 2022-03-17 16:13 太轻描淡写了 阅读(469) 评论(0) 推荐(0) 编辑
摘要:typeof 变量 返回一个字符串(小写),用来判断:Undefined, String, Number, Boolean, Symbol, Object, Function; 无法检测引用类型中的 Array; 优点:可以区分 Function 和 Object; 缺点: 对于 Null, 返回 阅读全文
posted @ 2022-03-15 18:51 太轻描淡写了 阅读(49) 评论(0) 推荐(0) 编辑
摘要:一直对 JS 中原型与原型链的内容不清楚,今天进行系统学习,做简单记录,方便以后加深印象; 构造函数 构造函数其实就是一个普通的函数, 但内部使用了 this 变量; function Person(name, age) { this.name = name; this.age = age; }; 阅读全文
posted @ 2022-03-08 14:30 太轻描淡写了 阅读(35) 评论(0) 推荐(0) 编辑
摘要:闭包函数:能够访问其他函数内部变量的函数; 简单理解:声明在一个函数中的函数,叫做闭包函数; 闭包:内部函数总是可以访问其所在的外部函数中声明的参数和变量,即使在其外部函数被返回(寿命终结)了之后。 闭包的特点: 让外部访问函数内部变量成为可能 局部变量会常驻内存中 可以避免使用全局变量,防止全局变 阅读全文
posted @ 2022-03-04 16:45 太轻描淡写了 阅读(37) 评论(0) 推荐(0) 编辑
摘要:普通函数 谁调用了函数,那么这个函数中的 this 就指向谁. let myFun = function() { console.log(this); } let obj = { name: "赵云", myFun: function() { console.log(this); } } // 这里 阅读全文
posted @ 2022-03-02 17:19 太轻描淡写了 阅读(231) 评论(0) 推荐(0) 编辑
摘要:很多人分不清这三个的用法,其实很简单 例子一: var name = "张三", age = 23; var obj = { name: "李四", objAge: this.age, myFun: function() { console.log(`我叫this.name,{this 阅读全文
posted @ 2022-02-24 13:14 太轻描淡写了 阅读(150) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示