美文网首页
ES6--部分新增语法

ES6--部分新增语法

作者: 郭月帅 | 来源:发表于2017-08-06 15:29 被阅读0次

一、let和const   

(1)let:定义变量  优点:  1.let不能重复定义  2.let有块级作用域    3.let没有变量提升  

(2)const:定义常量:    只能赋值一次,值不能再修改,  

 例如:const path=require('path');  

 注:const具有和let同样的优点  

二、解构赋值  可以对数组,对象单独取值 

例如:

var obj={name:"alice",age:20,sex:"女",address:"北京海淀"}

var {name,age,address}=obj;

三、模板字符串  

用反引号来定义字符串:

即`字符串内容`${ 变量 }

例如:let  obj={name:"alice",age:20,sex:"女",address:"北京海淀"}

let {name,age,address}=obj;

let info=`我的姓名是${name},我的年龄是${age},我住 在${address}`

四、默认参数 可以给函数形参设置默认值 

例如:function sum(a=默认值,b=0,c=0,d=0) {}    

五、...用法  

作用:  1.数据列表->数组  

             适用场景:函数传参  实参是数据列表 ,形参可以用...变量名接收  

             2, 数组->数据列表  

             适用场景:将数组展开,转换成数组列表  

六、对象增强  let obj={  }  

1.如果对象的key和value同名,可简写  

          例如:name="姓名:"+name;age="age:"+age;address="地址:"+address;        

                     return { name,age,address}  

2.对象中的方法也可简写  

 let  obj={name,age:20,sex:"女",address:"北京海淀",say() {alert(this.name);alert(this.age)}}  

3.对象之间也能实现继承,通过__proto__属性实现继承

例如:

          let sonObj={    

                  __proto__:parentObj,

                  childrens:['张三','李四','王五'],

                  play() {alert(this.childrens)}

         }  

七、箭头操作符 

            (形参1,形参2,...) => { 程序体 }  

            相当于 

            function(形参1,形参2,...) {  .... }

            注意:箭头函数本身没有自己的this,他的this是箭头函数所在的环境的this      

八、class 面向对象,构造函数  prototype  定义一个类:  

            class 类名 {//相当于ES5构造函数      

                     constructor() {}      //原型上方法      

                     方法1(){}

                     方法2(){}      

                     方法3(){}      

                     方法4(){}  

            }  

子类如何继承父类  

          class  子类  extends 父类名 {

                     constructor(name,age,address) {

                              super(name,age)//必须写

                              this.address=address;

                      }      

                      子类方法1(){}       

                      子类方法2(){}  

          } 

 注意:子类没有自己的this,必须继承父类的this,父类在子类用super()表示  

九:ES6模块    

       导出:export    

                 (1)导出多个模块:export { 模块1,模块2 }     

                 例如:export { drag,rili  }    

                 (2)导出一个默认模块:     

                 export default 默认模块名  

                 注意:一个js文件只能导出一个默认模块    

       导入:import      

                 (1)导入多个模块:import { 模块1,模块2 } from "要导入的模块js"      

                 (2)导入默认模块:import 模块名 from "要导入的模块js"   

       导出默认模块和非默认模块:  格式:import 默认模块,{ 模块1,模块2 }  from './drag';   

       node导入导出模块:    

                   导出:module.exports或exports导出    

                   导入:require('导入另一个js文件')

相关文章

  • ES6--部分新增语法

    一、let和const (1)let:定义变量 优点: 1.let不能重复定义 2.let有块级作用域 ...

  • es6--函数新增

    函数的扩展 函数参数设置默认值...rest参数箭头函数Promise函数Generator 函数async函数 ...

  • 深入理解ES6--解构

    深入理解ES6--解构

  • Nest.js学习之路(16)-typeorm(3)basic

    这章继续完成CRUD部分 语法相当简洁 platform.service.ts新增相关方法 更新platform....

  • 软帝学院:80道java基础部分面试题(四)

    Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集...

  • 数据库操作_批量新增/修改

    MyBatis相关拼接语法 1. 批量新增 批量新增table_A表中的(column1、column2、colu...

  • JavaSE语法(部分)

    JavaSE语法(部分) 继承 继承中变量的访问特点 在子类方法中访问一个变量/成员方法 子类局部范围找 子类成员...

  • Java面试题知识点

    1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...

  • Java初级面试题

    1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...

  • ES6--let声明变量,const声明常量

    ECMA2015(也称es6),在原先javascript语法基础上新增语法特征,浏览器对es6的语法支持还不够,...

网友评论

      本文标题:ES6--部分新增语法

      本文链接:https://www.haomeiwen.com/subject/nmaglxtx.html