美文网首页
let 和 const;函数默认参数

let 和 const;函数默认参数

作者: 知行社 | 来源:发表于2017-10-07 08:07 被阅读0次

let

let 和 var 一样, 也是是用来定义变量的。如

let a = 3

let 与 var 的区别

  • let 定义的变量的作用域是代码块,var 定义的变量的作用域是函数。
  • let 不存在变量提升。
  • 不允许在相同作用域内,重复声明同一个变量。

const

用 const 来定义常量。如

const PI = Math.PI

const 实际上保证的,并不是变量的值不得改动,而是变量指向的那个内存地址不得改动。对于简单类型的数据(数值、字符串、布尔值),值就保存在变量指向的那个内存地址,因此等同于常量。但对于复合类型的数据(主要是对象和数组),变量指向的内存地址,保存的只是一个指针,const只能保证这个指针是固定的,至于它指向的数据结构是不是可变的,就完全不能控制了。因此,将一个对象声明为常量必须非常小心。

如果想让内容不能变,用 Object.freeze(obj)

为了让代码更健壮,尽可能的用 let 和 const 来定义变量。

函数的默认参数

function Point(x = 0, y = 0) {
  this.x = x;
  this.y = y;
}

const p = new Point();
p // { x: 0, y: 0 }

与解构赋值一起使用

function foo({x, y = 5} = {}) {
  console.log(x, y);
}

foo() // undefined 5

相关文章

  • 4、函数

    函数 1、函数的默认参数 2、函数的参数默认已经定义了,不能再使用let const声明 3、箭头函数 =>

  • let 和 const;函数默认参数

    let let 和 var 一样, 也是是用来定义变量的。如 let 与 var 的区别 let 定义的变量的作用...

  • 6、函数的拓展

    6 函数的拓展 #6.1 参数默认值 注意: 参数变量是默认声明的,不能用let和const再次声明: 使用参数默...

  • ES6-函数的扩展

    函数的参数默认值 使用参数默认值时,函数不能有同名参数。在函数体内,不能使用let/const再声明与参数同名的变...

  • 4-函数默认参数、箭头函数、剩余参数

    一、函数默认参数 注意:函数参数默认已经定义了,不能再使用let,const 二、扩展运算符、rest运算符: 语...

  • ES6 函数扩展

    1.函数参数的默认值 Ⅰ.基本结构 为函数的参数设置默认值 参数变量是默认声明的不能用let或const再次声明 ...

  • 第四章:ES6总结

    1.变量: let,const2.函数: 箭头函数,函数参数(参数扩展) 函数默认参数3.数组方法4.字符串5.p...

  • ES6中函数新增扩展

    一、参数 ES6允许为函数的参数设置默认值 函数的形参是默认声明的,不能使用let或const再次声明 参数默认值...

  • 原生JS相关

    1.ES6语法 let const 箭头函数 Promise 展开操作符 默认参数 import export 2...

  • es6 函数扩展和作用域

    默认值 对象形式参数变量默认声明的,不能用let const 再次声明 作用域:一旦设置了参数默认值,函数进行声明...

网友评论

      本文标题:let 和 const;函数默认参数

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