ES6简介及其基础语法

阮一峰老师 ES6教程 参考网址

ES6介绍:

 1. 什么是ES6?
  ECMAScript 6.0(简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。
  它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。
 2. JavaScript 和 ECMA Script 的区别?
  javascript, Java特别火,导致名字一直是javascript
  ECMA组织制定js标准,不想用java, 叫ECMA Script 6.0
  java是有商标的,有些情况不好用

变量

1.ES6声明变量的六种方法
  ES5 只有两种声明变量的方法:var命令和function命令。
  ES6 除了添加let和const命令,还有import命令和class命令

 1):var
   如果用 var 声明的变量 提前调用的话 -- undefined   
   如果不声明直接调用的话 -- not defined
 2):let
   let 声明的变量 没有变量提升
   let 不允许重复声明变量
   let 是 块级作用域 
 3):const
   const 声明一个只读的常量(一旦声明,常量的值就不能改变
   const 声明常量的同时给其赋值 否则会报错
   const 不可重复声明,不能再次赋值
   const 声明的常量,名称要大写


   解构赋值
概念:解构赋值是对赋值运算符的扩展。   
它是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值
   =:赋值      ==:比较       ===:全等于
 最简单理解等号左边多个值,等号右边也可以有多个值
 注:对应的结构

数组相关

1): forEach()
   var arr = ["react", "vue", "微信"];
   arr.forEach(function (value, index, a) {
       // console.log(value)    // 第一个参数 数组的每一项
       // console.log(index)    // 第二个参数  索引值
       // console.log(a)        // 第三个参数 数组本身
    })

2): filter()
    var arr = [{ id: 1, done: true }, { id: 2, done: false }, { id: 3, done: false }, { id: 4, done: true }]
    var a = arr.filter(function (v) {    // 过滤符合条件的元素 返回一个新的数组 
        return v.done      //  return 后面表达式为true 时 留下这个元素
    })
    // console.log(a)
3): map()     // 对数组元素处理,返回一个处理后数组
    对原数组的内容不发生改变
4): some()

5): every()

6): find() 
用于找出第一个符合条件的数组成员  如果没找到 返回 undefined
7): findIndex()
返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1
8): includes()
返回一个布尔值,表示某个数组是否包含给定的值
9): for...of 循环 遍历数组
    for(let v of arr){ }
10): ...用法

函数相关

  默认参数
  箭头函数
  rest函数(可变参数的函数)
	
 1.默认参数用法
   function hello(x=10,y=20){ }
   
 2.箭头函数
   格式:
     (参数1,参数2,....) => {
			
	 }
 注1: 如果参数只有一个,可以省略()
	   如果没有参数或有多个参数, 必须加上 ()
 注2: { }中只有一个renturn语句时,省略{ }和return
 注3: 箭头函数好处
       1): 简化回调函数
	   2):中this指向定义的时作用域

 3.rest函数   
   用途:定义变参的函数      剩余参数...只能定义在最后面
   格式:function fun(a,b, ...list){ }

箭头函数的this指向
箭头函数 里面的this 指向定义时的环境

改变this指向的三种方法
  1): call
  2): apply
  3): bind    // bind 有返回值  返回的是 修改后的方法

类 和 对象

 1、对类和对象有什么改进
	  提供了关键字 class 定义类
      提供了关键字 extends 继承一个类 、super()执行父类的初始化函数
	  提供了对象字面量, 定义一个函数

2、关键字 class 的用法
   格式:
  	class 类名{
		//自动调用初始化函数
		constructor(name){
			//添加的属性
			this.name = name;
		}
		say(){
			(方法函数
		}
	}
   //	var 变量名 = new 类名("×××");

3、extends继承的使用
格式:
	class 子类类名 extends 父类{
		constructor(name,score){     // extends 继承的关键字
			super(name);             //  super 当前对象的原型对象
			this.score = score;
		}
		show(){	
		  (方法函数
		}
	}
  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值