var的特点

  • 函数作用域

let的特点

  • 没有变量提升,必须先声明。再调用
  • 同一个作用域下不可以重复定义同一个名称
  • 块级作用域

  

 function fun(){

  let a = 10

      if(true){

  let a =100 

  }

     console.log(a)

}
输出a为10,因为let为块级作用域。

暂时性死区    let a = b, b = 1 

const的特点     (数组和对象指向的是内存,对应的值可修改)

  • 没有变量提升,必须先声明。再调用
  • 同一个作用域下不可以重复定义同一个名称
  • 块级作用域
  • 声明之后就得初始化,不能只声明不赋值
  • 声明的为只读常量,不能改变

箭头函数

简化了函数的定义

var f = v =>v;   //箭头函数后的值为return值

等同于

var f = function(){
  return v
}

Set  去重

const a = new Set();
添加
  a.add(1)
  链式添加:a.add(1).add(2)...... 类型转换 将set转为数组
  1.   var a = Array.from(a)
  2. [...new Set([1,2,3,42,2,1,2])] //...为扩展运算符。var a = [1,2,3] ; var b = ...a 值为 1,2,3 去掉了括号

 map 

const m = new Map();

添加数据

 m.set('id',1).set('name','test')  添加时为键值对添加  键可以为任何类型

循环  for  of

  for( let [k,v] of m){
  .......
  }

ES6规范及语法基础的更多相关文章

  1. Java语法基础(1)

    Java语法基础(1) 1.      Java是一门跨平台(也就是跨操作系统)语言,其跨平台的本质是借助java虚拟机 (也就是JVM(java virtual mechinal))进行跨平台使用. ...

  2. 读书笔记(06) - 语法基础 - JavaScript高级程序设计

    写在开头 本篇是小红书笔记的第六篇,也许你会奇怪第六篇笔记才写语法基础,笔者是不是穿越了. 答案当然是没有,笔者在此分享自己的阅读心得,不少人翻书都是从头开始,结果永远就只在前几章. 对此,笔者换了随 ...

  3. python语法基础笔记

    本篇笔记基于博主自己的的学习,理解,总结所写.很多东西可能存在误解,不能保证百分之百的正确. 1. 数据表达1.1 常量和变量1.2 数据类型1.2.1 基本数据元素1.2.1.1 数字1.2.1.2 ...

  4. C#-01.语法基础

    a. 语法基础 i. 命名空间(namespace):是 C# 中组织代码的方式,用来声明命名空间 . 语法:namespace 命名空间名称{ //命名空间的声明 } . 作用:可以把紧密相关的一些 ...

  5. 1. 模块化的引入与导出 (commonJS规范 和ES6规范)

    node组件导出模块 node一般用commonJS规范 可以通过module.exports导出自己写的模块 这样其他的js文件就可以引用并使用这个模块 module.exports = { log ...

  6. 根据 Promise/A+ 和 ES6 规范,实现 Promise(附详细测试)

    Promise 源码 https://github.com/lfp1024/promise promise-a-plus const PENDING = 'PENDING' const REJECTE ...

  7. 学会网页制作,web app开发,必须先从语法基础开始学习

    做软件开发,是从事编程开发工作,必须先从语法基础开始学习,通过语法组成产品效果.      前端开发的基础语法,由HTML+CSS+JavaScript组成,这是前端开发最基本的3个语言.       ...

  8. Python | Python语法基础

    目录 前言 1. 变量与简单数据结构 2. 列表相关 3. 集合 4. If语句 5. 字典 6. 用户输入和while循环 7. 函数 8. 类与对象 9. 文件 10. 异常 11. 测试 最后 ...

  9. JAVA 入门第一章(语法基础)

    本人初学java 博客分享记录一下自己的学习历程 java我的初步学习分为六章,有c和c++的基础学起来也简便了很多. 第一章 语法基础 第二章 面向对象 第三章 常用工具类 第四章 文件操纵 第五章 ...

随机推荐

  1. 前端每日实战:4# 视频演示如何用纯 CSS 创作一个金属光泽 3D 按钮特效

    效果预览 按下右侧的"点击预览"按钮在当前页面预览,点击链接全屏预览. https://codepen.io/zhang-ou/full/MGeRRO 可交互视频教程 此视频是可以 ...

  2. js的立即执行函数

    立即执行函数:常用于第三方库,好处在于隔离作用域,任何一个第三方库都会存在大量的变量和函数,为了避免变量污染(命名冲突),一般想到的方法就是使用立即执行函数.jQuery就是使用的立即执行函数. 函数 ...

  3. MapReduce 简单数据统计

    1. 准备数据源 摘录了一片散文,保存格式为utf-8 2. 准备环境 2.1 搭建伪分布式环境 https://www.cnblogs.com/cjq10029/p/12336446.html 上传 ...

  4. django 知识点小结

    以下内容为用django写blog中的一些知识点,权当复习. 一.定义view 1.get_object_or_404()是用get()查询数据,如果不存在就直接返回404 参数: get_objec ...

  5. POJ 1879

    栈和队列的综合应用,利用栈和队列分别模拟分,5分,时槽,以及小球队列 利用求出一天后的置换可以求出周期,进而求出最大公约数(可以利用矩阵的角度,也许可以简化,因为每次都是乘上一个相同的置换矩阵) 要注 ...

  6. 测试必知必会系列- Linux常用命令 - mkdir

    21篇测试必备的Linux常用命令,每天敲一篇,每次敲三遍,每月一循环,全都可记住!! 新建一个文件夹 yyTest mkdir yyTest 新建三个文件夹 yyTest1 yyTest2 yyTe ...

  7. D2T1服务器需求——毒?瘤题(并不是

    这题我第一眼居然差点错了\(OTZ\) 然后写了线段树,还写挂了-- 写好了\(query\)操作,发现似乎不需要区间查询,然后又删掉-- 看着这熟悉的操作,似乎在哪里见过-- 然后我莫名其妙把一个\ ...

  8. el-dialog对话弹框中根据后台数据无限制添加el-select标签,并进行展示,搜索,删除

    前几天遇到一个题,el-dialog对话弹框中根据后台数据无限制添加el-select标签,并进行展示,搜索,删除,在这上面用到了递归算法,废话不多说,直接上代码 <template> & ...

  9. Core + Vue 后台管理基础框架8——Swagger文档

    1.前言 作为前后端分离的项目,或者说但凡涉及到对外服务的后端,一个自描述,跟代码实时同步的文档是极其重要的.说到这儿,想起了几年前在XX速运,每天写完代码,还要给APP团队更新文档的惨痛经历.给人家 ...

  10. 关于浏览器Number.toFixed的错误修复

    问题描述如下: var n = 1.255; var fixed = n.toFixed(2); console.log(fixed);//结果:1.25 /* 以上代码运行预期的结果是1.26,但是 ...