![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript高级程序设计
文章平均质量分 93
前端 贾公子
博主写了对element-plus的表格和表单的封装
[表格]https://gitee.com/childe-jia/table-vue3
[表单] https://gitee.com/childe-jia/form-render
大家支持一下
展开
-
JS语言基础
每个setTimeout 引用的都是不同的变量实例,所以console.log 输出的是我们期望的值,也就是循环执行过程中每个迭代变量的值。因为let 的作用域是块,所以不可能检查前面是否已经使用let 声明过同名变量,同时也就不可能在没有声明的情况下声明它(即使检查到没有,使用let声明也只是在检查块作用域中)。const 声明的限制只适用于它指向的变量的引用。const 的行为与let 基本相同,唯一一个重要的区别是用它声明变量时必须同时初始化变量,且尝试修改const 声明的变量会导致运行时错误。原创 2023-01-16 17:28:19 · 629 阅读 · 0 评论 -
迭代器与生成器
特定结构的可迭代对象,对外暴露了Iterable(可迭代对象)接口,而且可以通过Iterator(迭代器)消费可迭代对象是一种抽象的说法。基本上,可以把可迭代对象理解成数组或集合这样的集合类型的对象。// 数组的元素是有限的// 递增索引可以按序访问每个元素// 集合的元素是有限的// 可以按插入顺序访问每个元素不过,可迭代对象不一定是集合对象,也可以是仅仅具有类似数组行为的其他数据结构,比如本章开头提到的计数循环。该循环中生成的值是暂时性的,但循环本身是在执行迭代。原创 2023-01-14 10:46:44 · 1074 阅读 · 0 评论 -
变量、作用域与内存
原始值可能是这6中原始数据类型之一:undefined、null、string、boolean、number、symbol原始值大小固定,因此保存在栈内存上从一个变量到另一个变量复制原始值会创建该值得第二个副本引用值是对象,存储在堆内存上包含引用值的变量实际上只包含指向相应对象的一个指针,而不是对象本身从一个变量到另一个变量的复制只会复制指针,因此结果是两个变量都指向同一个对象typeof 操作符可以确定值的原始类型,而 instanceof 操作符用于确保值的引用类型。原创 2023-01-13 15:17:44 · 480 阅读 · 0 评论 -
集合引用类型 下
在这个例子中,因为值也没有被引用,所以这对键/值被破坏以后,值本身也会成为垃圾回收的目标。WeakMap 中“weak”表示弱映射的键是“弱弱地拿着”的。但要注意的是,弱映射中值的引用可不是“弱弱地拿着”的。只要键存在,键/值对就会存在于映射中,并被当作对值的引用,因此就不会被当作垃圾回收。WeakMap 中的“weak”(弱),描述的是JavaScript 垃圾回收程序对待“弱映射”中键的方式。WeakSet 中的“weak”(弱),描述的是JavaScript 垃圾回收程序对待“弱集合”中值的方式。原创 2023-01-12 11:39:38 · 421 阅读 · 0 评论 -
集合引用类型 上
上述例子中,从数组arr1,所以为3的元素开始复制,一直到索引为4的元素结束,但是不包含索引为4的元素,此时就复制了[‘d’],然后把它覆盖到从索引为0开始的元素,因为只复制了一个元素,所以值覆盖了一个元素arr1[0]这个元素。pop()方法则用于删除数组的最后一项,同时减少数组的length 值,返回被删除的项。方法会返回一个数组。用alert()显示数组,因为alert()期待字符串,所以会在后台调用数组的toString()方法,从而得到跟toString()一样的结果。(超出长度则在末尾插入);原创 2023-01-12 09:54:40 · 264 阅读 · 0 评论 -
对象,类与面向对象编程 上
ECMA-262 将对象定义为一组属性的无序集合。严格来说,这意味着对象就是一组没有特定顺序的值。对象的每个属性或方法都由一个名称来标识,这个名称映射到一个值。正因为如此(以及其他还未讨论的原因),可以把ECMAScript 的对象想象成一张散列表,其中的内容就是一组名/值对,值可以是数据或者函数。原创 2023-01-11 10:37:47 · 252 阅读 · 0 评论 -
代理与反射
ES6新增的代理和反射为开发者提供了拦截并向基本操作嵌入额外行为的能力。具体就是,可以给目标对象定义一个关联的代理对象,而这个代理对象可以作为抽象的目标对象来使用。在对目标对象的各种操作影响目标对象之前,可以在代理对象中对这些操作加以控制。使用代理的主要目的是定义捕获器;捕获器:处理程序对象中定义的“基本操作的拦截器”;每个程序可以包括0个或多个;每个捕获器对应一种基本操作,可以直接或间接在代理对象上调用;原创 2023-01-10 10:49:42 · 549 阅读 · 0 评论 -
HTML中的JavaScript
要包含外部JavaScript文件,必须将src属性设置为要包含文件的URL。文件可以跟网页在同一台服务器上,也可以位于完全不同的域。所有元素会依照它们在网页中出现的次序被解释。在不使用defer和async属性的情况下,包含在元素中的代码必须严格按次序解释。对不推迟执行的脚本,浏览器必须解释完位于元素中的代码,然后才能继续渲染页面的剩余部分。为此,通常应该把元素放到页面末尾,介于主内容之后及标签之前。原创 2023-01-09 15:00:25 · 3577 阅读 · 0 评论