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. U盘启动盘安装Windows10操作系统详解

    没有装过系统的同学,总以为装系统很神秘?是专业技术人员干的事情.今天我们来看看怎么借助常用的U盘装上全新的win10系统. 准备材料: 软件软碟通,可上官网下载:https://cn.ultraiso ...

  2. python学习_2

    1.pycharm部分技巧 1)创建时路径尽量要避免中文2)用滚轮调整编辑器字体大小    1.file->setting...->editor->general 搜索'mouse' ...

  3. 元数据Metadata

    元数据是什么? 元数据(Metadata),又称中介数据.中继数据,为描述数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如指示存储位置.历史数据. ...

  4. 《单元测试之道Java版》的读书笔记

    总览 第2章 首个单元测试 第3章 使用JUnit编写测试 3.1 构建单元测试 3.2 JUnit的各种断言 3.3 JUnit框架 4. 测试什么? 5.CORRECT(正确的)边界条件 6.使用 ...

  5. 【Teradata SQL】行转列函数TDStats.udfConcat

    TDstats.udfConcat为Teradata自带UDF,定义如下: show function tdstats.udfconcat; REPLACE FUNCTION tdstats.UDFC ...

  6. oracle有三种类型的异常错误: 预定义 ( Predefined )错误里面的常见错误

    oracle有三种类型的异常错误: 预定义 ( Predefined )错误, 非预定义 ( Predefined )错误, 用户定义(User_define) 错误 预定义 ( Predefined ...

  7. Python测试模块doctest

    面试被问到了却没有用过,很尴尬:今天看了一下,真的是一个很简单的测试模块 方便起见,这里直接拿菜鸟教程的介绍和例子过来 开发高质量软件的方法之一是为每一个函数开发测试代码,并且在开发过程中经常进行测试 ...

  8. mysql时间比较

    ' and ZXBZ ='Y' AND SQRQ >= '2017-04-28 00:00:00' AND SQRQ <= '2017-04-28 23:59:59'; ;

  9. 实验一 windows基本网络命令

    一. 实验目的 1. 了解windows系统中网络命令的基本功能. 2. 掌握基本网络命令的使用方法. 3. 掌握使用网络命令观察网络状态的方法. 二.实验环境 1. 软件环境:Microsoft W ...

  10. 每个努力奋斗过的人,被不公正的际遇砸了满头包的时候,都有那么一瞬间的代入感。出生就是hard模式的人,早已经历了太多的劳其筋骨饿其体肤,再多的人为考验只会摧毁人对美好的向往。

    每个努力奋斗过的人,被不公正的际遇砸了满头包的时候,都有那么一瞬间的代入感.出生就是hard模式的人,早已经历了太多的劳其筋骨饿其体肤,再多的人为考验只会摧毁人对美好的向往.