上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 27 下一页
摘要: 垃圾回收属于JavaScript 中的内存管理,是自动执行的,而且是不可见的。我们创建基本类型、对象、函数……所有这些都需要内存。 垃圾回收方面,栈内存变量(基本类型)基本上用完就回收了,而推内存(object类型)中的变量因为存在很多不确定的引用,只有当所有调用的变量全部销毁之后才能回收。 可达性 阅读全文
posted @ 2019-09-02 16:35 seeBetter 阅读(279) 评论(0) 推荐(0)
摘要: // x为改变后的上下文this;会立即执行fn函数;传给fn的参数直接在后边用逗号隔开 fn.call(x, "a", "b"); // x为改变后的上下文this;会立即执行fn函数;传给fn的参数放在后边的数组里 fn.apply(x, ["a", "b"]); // x为改变后的上下文this;不会立即执行fn函数,需要主动调用fn函数;传给fn的参数直接在后边用逗号隔开 fn.bind( 阅读全文
posted @ 2019-09-02 14:24 seeBetter 阅读(97) 评论(0) 推荐(0)
摘要: 两者都是控制事件响应的频繁触发。 区别: 防抖:不管触发频率多大,都在停止触发之后的给定时间触发。节流:不管触发频率多大,都以恒定频率触发。 防抖(debounce):指触发事件后在n秒内函数只执行一次,如果在n秒内又触发了事件,则会重新计算这次函数的执行时间。 函数防抖的应用场景,最常见的就是用户 阅读全文
posted @ 2019-09-02 11:40 seeBetter 阅读(147) 评论(0) 推荐(0)
摘要: 这篇文章不包括Promise的基本用法,主要是一些平时不常用的。。。。。。 then方法指定的回调函数,如果运行中抛出错误,也会被catch方法捕获。以下例子最终会先输出catch error,然后再抛出错误信息: const testPromise = new Promise(function ( 阅读全文
posted @ 2019-08-30 18:40 seeBetter 阅读(160) 评论(0) 推荐(0)
摘要: 在JavaScript中,有三种常用的绑定事件的方法: 在DOM元素中直接绑定:onclick="eventFunction" 在JavaScript代码中绑定:elementObject.onXXX=function(){ // 事件处理代码 } 绑定事件监听函数:addEventListener 阅读全文
posted @ 2019-08-29 18:15 seeBetter 阅读(619) 评论(0) 推荐(0)
摘要: 以上代码中,在浏览器是分别输出Error: 3(正常打印出错误实例,未报错)和 Uncaught Error: 5(一个未捕获错误): 原因:以上例子中第二个try catch捕获不到错误,因为try catch是同步的,执行到setTimeout时把它放到了异步任务队列里(setTimeout是异 阅读全文
posted @ 2019-08-29 17:44 seeBetter 阅读(914) 评论(0) 推荐(0)
摘要: 由于javascript是单线程的,只能在JS引擎的主线程上运行的,所以js代码只能一行一行的执行,不能在同一时间执行多个js代码任务,这就导致如果有一段耗时较长的计算,或者是一个ajax请求等IO操作,如果没有异步的存在,就会出现用户长时间等待,并且由于当前任务还未完成,所以这时候所有的其他操作都 阅读全文
posted @ 2019-08-28 20:00 seeBetter 阅读(906) 评论(0) 推荐(0)
摘要: 闭包就是能够读取其他函数内部变量的函数。 闭包有三个特点: 函数嵌套函数。 函数内部可以引用外部函数的参数和变量。 这个参数和变量不会被垃圾回收机制回收。 比如想要实现一个函数,每次调用的时候,函数内的变量实现加1。 以下函数,每次调用fn,得到的a都是11 。这是因为每次调用的时候,都会重新声明a 阅读全文
posted @ 2019-08-28 17:23 seeBetter 阅读(122) 评论(0) 推荐(0)
摘要: 箭头函数这样写可以返回对象{ foo: x }: 箭头函数内部的this是词法作用域,由上下文确定,即在定义的时候就确定了它得this指向,而不是在调用它的时候。箭头函数只会从自己的父作用域里继承this,和谁调用的没有关系: 通过call()、apply()或bind()方法调用一个箭头函数时,只 阅读全文
posted @ 2019-08-28 15:10 seeBetter 阅读(192) 评论(0) 推荐(0)
摘要: 作用域在函数定义时就已经确定了,执行上下文环境在函数调用时才确定。在全局作用域和函数作用域中会创建执行上下文环境(有闭包存在时,一个作用域存在两个上下文环境也是有的)。函数每调用一次都会产生一个新的执行上下文环境。但是处于活动状态的执行上下文环境只有一个,这是一个压栈出栈的过程。 执行上下文:函数每 阅读全文
posted @ 2019-08-28 12:12 seeBetter 阅读(137) 评论(0) 推荐(0)
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 27 下一页