随笔分类 - JS(含 node), CSS, HTML
摘要:1. 引用类型转换为原始类型的规则 graph TB A1(获取数据 data 与转换提示 hint) --> A2(data 是否为原始类型) A2 --YES--> A3(返回 data) A2 --NO--> A4(是否指定 hint) A4 --YES--> A5(hint 是否为 Numb
阅读全文
摘要:1. iterator/generator 简介 1.1 iterator 1.1.1 iterator 的作用 通过迭代器可以返回一个集合中的每一个项. 我们常用的 for...of 循环和 ... 扩展运算符都是基于 iterator 实现的 // 这里对数组进行可迭代化 const itera
阅读全文
摘要:1. 深拷贝 1.1 递归深拷贝 1.1.1 从复制地址到复制引用类型 深拷贝与浅拷贝的区别就是: 当遇见引用类型 A 时 浅拷贝只会拷贝 A 的地址 深拷贝会在堆内存中将 A 复制一遍为 B, 并返回 B 的地址 故而: 深拷贝的第一步就是复制引用类型, 此时需要保证不可枚举属性和 Symbol
阅读全文
摘要:1. flex 父容器 container { display: flex; } 中的 display: flex 可以令一个元素成为 flex 父容器 1.1 flex-direction 用于控制主轴的方向 row(默认值): 主轴方向从左到右 row-reverse: 主轴方向从右到左 col
阅读全文
摘要:1. 为什么会有 Promise 当我们多次进行有依赖的网络请求或者文件请求时, 很可能会造成代码的层层嵌套, 导致回调地狱的出现: $.ajax({ url: "xxx", success: function(result) { $.ajax({ url: result, success: fun
阅读全文
摘要:1. this 的指向问题 关于函数的 this 的指向并不是一个很复杂的问题 我们首先要明确一个定义: fn = function () {...} 指的是 fn 这个属性存储着一个函数的地址 fn_addr, 而我们通过 fn_addr() 来执行相应地址的函数 接下来我们仍将 fn 称为 fn
阅读全文
摘要:1. 原型与原型链 1.1 什么是原型 对于任意一个引用类型, 都存在一个属性 [[Prototype]], 这就是我们所说的原型 而对于一个 function, 在存在一个 [[Prototype]] 的基础上, 其还会存在一个 prototype 属性, 这个属性是做什么的呢? function
阅读全文

浙公网安备 33010602011771号