1.let和const的常规使用

  • let声明的变量不存在预解析
  • let声明的变量不允许重复使用(在同一个作用域内)
  • ES6引入了块级作用域{},块内部定义的变量,在外部是不可以访问到的
  • 使用let在for循环括号中声明的变量只能在循环体中使用
  • 在块级作用域内部,变量只能先声明在使用
  • const用来声明常量,声明后不允许重新赋值
  • const声明的变量必须初始化

2.变量的解构赋值

  • 数组的解构赋值
var [a,b,c] = [1,2,3];
console.log(a,b,c); //1,2,3
var [a,b,c] = [,2,];
console.log(a,b,c); //undefined,2,undefined
var [a=11,b,c] = [,2,];
console.log(a,b,c); //11,2,undefined
  • 对象的解构赋值let {foo,bar} = {foo:"hello",bar:"hi"};
console.log(foo,bar); //hello,hi
let {foo:abc,bar} = {foo:"hello",bar:"hi"};//给foo起个别名叫abc
console.log(abc,bar); //在使用的时候就要用abc,否则会报错
let {cos,sin,random} = Math; //直接去对象里边找对应的函数
let {foo:abc="hello",bar} = {bar:"hi"}; //对象解构赋值设置默认值

  把对应属性的值赋值给变量,跟对象里属性的顺序无关

  • 字符串的解构赋值
let [a,b,c,d,e] = "hello";
console.log(a,b,c,d,e); // h e l l o
let {length} = "nihao" console.log(length); //5

3.字符串扩展

 includes()//判断字符串包含指定字符,参数2表示从第几个字符开始匹配
console.log("hello world".includes("world",7)) //false
  • startsWith()判断字符串中是否以某字符开头
  • endsWith()判断字符串中是否以某字符结尾
  • 模板字符串

  

var obj = {
username:"zs"
}
console.log(`<div>${obj.username}</div>`);

4.函数扩展

  • 参数默认值
function foo(param = "nihao"){console.log(param)} //nihao
  • 参数解构赋值
function foo({uname,age}={}){}  foo({uname:"lisi",age:12})
  • rest参数(剩余参数)
function foo(a,b,...param){console.log(param);}
foo(1,2,3,4,5) //1,2,[3,4,5]
  • 扩展运算符
function foo(a,b,c,d,e,f){console.log(a+b+c+d+e+f)}
let arr=[1,2,3,4,5,6]
foo(...arr) //

5.箭头函数

function foo (v){ return v} 等效于let foo = v => v  //函数体只有一行代码可以省略大括号

箭头函数体内的this对象,就是定义时所在的对象,而不是调用时所在的对象,箭头函数导致this总是指向函数定义生效时所在的对象。

箭头函数不可以new

箭头函数不可以使用arguments获取参数列表

es6常用语法学习笔记的更多相关文章

  1. vue学习(一)ES6常用语法

    1 ES6常用语法 1.1 变量提升 例① # 变量提升 <div id="app"> </div> <script> console.log( ...

  2. 7 种 Javascript 常用设计模式学习笔记

    7 种 Javascript 常用设计模式学习笔记 由于 JS 或者前端的场景限制,并不是 23 种设计模式都常用. 有的是没有使用场景,有的模式使用场景非常少,所以只是列举 7 个常见的模式 本文的 ...

  3. ES6常用语法

    ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015. 也就是说,ES6就是ES2015. ...

  4. mongodb常用命令学习笔记

    mongodb常用命令学习笔记 创建数据库 use DATABASE_NAME eg: use users; 如果数据库不存在,则创建数据库,否则切换到指定数据库.要显示刚刚创建的数据库,需要向数据库 ...

  5. Golang 语法学习笔记

    Golang 语法学习笔记 包.变量和函数. 包 每个 Go 程序都是由包组成的. 程序运行的入口是包 main. 包名与导入路径的最后一个目录一致."math/rand" 包由 ...

  6. MarkDown语法 学习笔记 效果源码对照

    MarkDown基本语法学习笔记 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. 下面将对Markdown的基本使用做一个介绍 目 ...

  7. 毕业设计 之 五 PHP语法学习笔记

    毕业设计 之 四 PHP语法学习笔记 作者:20135216 平台:windows10 软件:XAMPP,DreamWeaver 说明:该笔记是对网站编程语言的详细学习 一.PHP基础 0. 关于环境 ...

  8. Markdown常用语法学习

    Markdown常用语法学习,这些就够用了. 演示地址: https://github.com/YalongYan/Markdown-- 特别提示:  标题'##'后面必须加一个空格,否则编译不对.# ...

  9. ES6常用语法简介import export

    ES6常用语法简介import export let与var用法区别 //var var a = []; for (var i = 0; i < 10; i++) { a[i] = functi ...

随机推荐

  1. mysql export mysqldump version mismatch upgrade or downgrade your local MySQL client programs

    I use MySQL Community Edition and I solved this problem today. goto https://dev.mysql.com/downloads/ ...

  2. MySQL(InnoDB)是如何处理死锁的

    MySQL(InnoDB)是如何处理死锁的 一.什么是死锁 官方定义如下:两个事务都持有对方需要的锁,并且在等待对方释放,并且双方都不会释放自己的锁. 这个就好比你有一个人质,对方有一个人质,你们俩去 ...

  3. Linux下安装Nginx并配置一个图片服务器

    首先安装nginx安装环境 nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境. gcc 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没 ...

  4. 网络流 E - Escape HDU - 3605

    2012 If this is the end of the world how to do? I do not know how. But now scientists have found tha ...

  5. 如何通过Git将写好的项目发布到github上

    1.在GitHub上创建新的项目文件 2.创建之后会进入新的页面,看到如下图的内容,将地址记下来 3.打开Git 4.进入项目本地所在目录 5.输入:git init 这个意思是在当前项目的目录中生成 ...

  6. 好程序员web前端分享如何理解JS的单线程

    好程序员web前端分享如何理解JS单线程,JS本质是单线程的.也就是说,它并不能像JAVA语言那样,两个线程并发执行. 但我们平时看到的JS,分明是可以同时运作很多任务的,这又是怎么回事呢? 首先,J ...

  7. 【原创】那些年用过的Redis集群架构(含面试解析)

    引言 今天是2019年2月12号,也就是大年初八,我接到了高中同学刘有码面试失利的消息. 他面试的时候,身份是某知名公司的小码农一枚,却因为不懂自己生产上Redis是如何部署的,导致面试失败! 人间惨 ...

  8. 云计算openstack介绍

    一.云计算的前世今生 所有的新事物都不是突然冒出来的,都有前世和今生.云计算也是IT技术不断发展的产物. 要理解云计算,需要对IT系统架构的发展过程有所认识. 请看下 IT系统架构的发展到目前为止大致 ...

  9. 移除 iview的Input组件默认background效果

    .class名 .ivu-input-group-prepend{ background:rgba(255,255,255,0); color: #fff; }

  10. QQ浏览器、火狐浏览器中页面有点大的问题记录

    做页面时候,发现火狐和腾讯QQ浏览器有个问题,就是会将页面显示的比较大,像点了缩放比例120%似的,事实上缩放比例是100%,很奇怪. 甚至面对这个问题,连腾讯公司主页也会放大,也让我很困惑. 比如: ...