![](https://img-blog.csdnimg.cn/a49d2230abf34644ac9816766573d3b4.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
ES6新特性
文章平均质量分 68
ES6新特性
Armin444
大三计算机在读
展开
-
ES6 闭包相关面试题
一、如何产生闭包(closure)闭包(closure),是指函数变量可以保存在函数作用域内,因此看起来是函数将变量“包裹”了起来。//根据定义,包含变量的函数就是闭包也就是函数嵌套函数就可以称之为闭包。作用域应对的特殊情况,有两种表现:函数作为参数被传递函数作为返回值被带回函数中的自由变量,取决于函数定义的地方,跟执行的地方没关系二、闭包的应用场景闭包应用场景1,封装对象的私有属性和方法隐藏数据做一个简单的缓存工具// 闭包隐藏数据,只提供 APIfun原创 2022-05-13 15:00:07 · 293 阅读 · 0 评论 -
ES6 闭包
闭包一、变量作用域变量根据作用域的不同分为两种:全局变量和局部变量。函数内部可以使用全局变量。函数外部不可以使用局部变量。当函数执行完毕,本作用域内的局部变量会销毁。二、闭包的概念**闭包函数:**声明一个在函数中的函数,有权访问另一个函数作用域中变量,叫做闭包函数。(函数嵌套函数)**闭包:**内部函数总是可以访问其所在的外部函数中声明的参数和变量,即使在其外部函数被返回(寿命终结)了之后。**闭包的主要作用:**延伸了变量的作用范围。演示:从外部访问函数内部的变量三、原创 2022-05-13 14:59:36 · 558 阅读 · 0 评论 -
ES6 原型和原型链
1、构造函数和原型 prototype(1)原型prototype:每个构造函数都有一个prototype属性,指向一个对象。prototype的本质也是一个JavaScript对象,称为原型对象,这个对象的所有属性和方法都会被构造函数所拥有。因此,可将共用的一些方法直接定义在prototype上,这样所有对象实例就可以共享这些方法;(2)作用:原型prototype的作用是共享方法、节约内存;// 1、构造函数 function Star(uname, age) { this原创 2022-05-13 14:59:05 · 688 阅读 · 0 评论 -
JS中的this指向
this的概念:在js中,this的意思为“这个;当前”,是一个指针型变量,它动态指向当前函数的运行环境。在不同的场景中调用同一个函数,this的指向也可能会发生变化,但是它永远指向其所在函数的真实调用者;如果没有调用者,就指向全局对象window。普通函数:关于this,谁调用就指向谁,没有调用者,就指向全局对象window。箭头函数:箭头函数的this指向于函数作用域所用的对象。一、全局环境下的this指向在全局作用域下,this始终指向全局对象window,无论是否是严格原创 2022-05-13 14:58:34 · 38254 阅读 · 13 评论 -
ES6箭头函数及面试题
箭头函数箭头函数是es6当中对函数的一种全新表示法。其将函数的简洁性发扬到了极致!先来看一个最简单的箭头函数:let fn = a => avar m = prompt()alert(fn(m))1. 箭头函数写法一、如果只有一条语句,可以将{}和return省略掉let fn = a => a+a//相当于let fn = function(a){ return a+a;}二、如果语句为多条,则不可以省略{}和returnlet fn = a =>原创 2022-05-13 14:58:07 · 611 阅读 · 0 评论 -
ES6 var 、let 和 const 区别
varvar 定义的变量可以修改,如果不初始化会输出undefined,不会报错;在相同作用域里,可以重复声明同一个变量;会声明提升;( if 内的 {} 不是作用域)letlet是块级作用域,函数内部使用let 定义后,对函数外部无影响;在相同作用域里,不可以重复声明同一个变量;声明的变量不会存在变量提升;( if 内的 {} 是作用域 )“暂时性死区”,在代码块内,使用let命令声明变量(或者const声明常量)之前,该变量(常量)都是不可用的。.原创 2022-05-13 14:57:26 · 130 阅读 · 0 评论