摘要: 由于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)