互联网络

ES6系列_16之模块化操作

ES6的模块化操作主要包括两个方面。(1)export:负责进行模块化,也是模块的输出。(2)import:负责把模块引,也是模块的引入操作。export的用法:export可以让我们把变量,函数,对象进行模块化,提供外部调用接口,让外部进行引用。先来看个最简单的例子,把一个变量模块化。我们新建一个demo.js文件,...
代码星球·2020-08-31

ES6系列_14之promise对象的简单使用

1.产生原因在前端开发中,最常见的的就是"回调",我相信很多人对于这个"回调"可谓是印象深刻呢。究其原因是因为层层回调会造成所谓的“回调地狱(callbackhell)”(最明显的就是代码的层层嵌套)2.解决办法实解决回调地狱的办法有很多,从代码书写层面就可以将绝大部分回调代码写的尽量简单易懂。...

ES6系列_13之Proxy进行预处理(简单学习)

1.理解什么是预处理?当我们在操作一个对象或者方法时会有几种动作,比如:在运行函数前初始化一些数据,在改变对象值后做一些善后处理。这些都算钩子函数,Proxy的存在就可以让我们给函数加上这样的钩子函数。Proxy进行预处理可以简单理解为:执行方法前,先预处理代码(预热工作)。 2.对比引入Proxy我们先来回...

ES6系列_12之map数据结构

1.map数据结构出现的原因?JavaScript的对象(Object),本质上是键值对的集合(Hash结构),但是传统上只能用字符串当作键。这给它的使用带来了很大的限制。为了能实现将对象作为键值对的key,ES6提供了Map数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串...
代码星球·2020-08-31

ES6系列_11之Set和WeakSet数据结构

一、Set1.Set是什么? Set是ES6提供的一种新的数据结构。类似于数组。2.Set能解决什么问题Set和Array的区别是Set不允许内部有重复的值,如果有只显示一个,相当于去重。3.怎么使用Set相关东西 Set函数可以接受一个数组(或者具有iterable接口的其他数据结构)作为参数,用...

ES6系列_10之Symbol在对象中的作用

在ES5中对象属性名都是字符串,这容易造成属性名的冲突,比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin模式),新方法的名字就有可能与现有方法产生冲突,于是 ES6引入了Symbol。Symbol是一种新的原始数据类型,表示独一无二的值。它是继undefined、null、布尔值(B...

ES6系列_9之对象

 1.对象赋值es5中的对象赋值方式如下:letname="小明";letskill='es6开发';varobj={name:name,skill:skill};console.log(obj);结果为:ES6允许把声明的变量直接赋值给对象,例如:letname="小明";letskill='es6开发';...
代码星球·2020-08-31

ES6系列_8之函数和数组

 1.对象的函数解构ES6为我们提供了这样的解构赋值使在前后端分离时,后端返回来JSON格式的数据,前端可以直接把这个JSON格式数据当作参数,传递到函数内部进行处理。比如:letjson={a:'es6',b:'es5'}functionfun({a,b='es5'}){console.log(a);//e...
代码星球·2020-08-31

ES6系列_7之箭头函数和扩展

 1.默认值在ES6中给我们增加了默认值的操作相关代码如下:functionadd(a,b=1){returna+b;}console.log(add(1));可以看到现在只需要传递一个参数也是可以正常运行的。输出结果为:2。2.主动抛出错误ES6中我们直接用thrownewError(xxxx),就可以抛出...

ES6系列_6之新增的数组知识

 1.JSON数组格式转换JSON的数组格式就是为了前端快速的把JSON转换成数组的一种格式,json数组格式如下:letjson={'0':'男','1':'女',length:3}这就是一个标准的JSON数组格式,跟普通的JSON对比是在最后多了一个length属性。只要是这种特殊的json格式都可以轻松...

ES6系列_5之数字操作

下面是针对ES6新增的一些数字操作方法进行简单梳理。(1)数字验证Number.isFinite(xx)使用Number.isFinite()来进行数字验证,只要是数字,不论是浮点型还是整形都会返回true,其他时候会返回false。leta=11;letb=11.0console.log(Number.isFinit...
代码星球·2020-08-31

ES6系列_4之扩展运算符和rest运算符

运算符可以很好的为我们解决参数和对象数组未知情况下的编程,让我们的代码更健壮和简洁。运算符有两种:对象扩展运算符与rest运算符。(1)解决参数个数问题以前我们编程是传递的参数一般是确定,否则将会报错或者异常,如下:functiontest(a,b,c,d){console.log(a)console.log(b)co...

ES6系列_5之字符串模版

(1)之前我们也可以使用JavaScript输出模版字符串,通常是下面这样的:varrestult="姓名:<b>"+person.name+"</b>"但是我们可以看到:这样的传统做法需要使用大量的“”(双引号)和+来拼接才能得到我们需要的模版。但是这样是十分不方便的。...
代码星球·2020-08-31

ES6系列_3之变量的解构赋值

ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构。解构有三种类型:1.数组的解构赋值(1)简单的数组解构以前,我们给变量赋值是直接单个指定值,比如:leta=0;letb=1;letc=2;数组解构的方式来进行赋值,如下:let[a,b,c]=[1,2,3];总结:从数组中提取值,按照位置的对...

ES6系列_2之新的声明方式

在ES5中我们在声明时只有一种方法,就是使用var来进行声明,ES6对声明的进行了扩展,现在可以有三种声明方式。   (1)var:它是variable的简写,可以理解成变量的意思。(2)let:它在英文中是“让”的意思,也可以理解为一种声明的意思。(3)const...