(三)-前端-基础

3.定义函数的方法

·1.function****声明

//ES5
function getSum(){}
function (){}//匿名函数
//ES6
()=>{}

·2.****函数表达式

//ES5
var getSum=function(){}
//ES6
let getSum=()=>{}

**
**·3.****构造函数

const getSum = new Function('a', 'b' , 'return a + b')

4.JS作用域的理解

JS中的作用域分为两种:
    全局作用域和函数作用域。
  函数作用域中定义的变量,只能在函数中调用,外界无法访问。
  没有块级作用域导致了if或for这样的逻辑语句中定义的变量可以被外界访问,
  因此ES6中新增了let和const命令来进行块级作用域的声明。
  
  //循环绑定的问题
  for (var i = 0; i < 3; i++) {
    setTimeout(() => console.log(i), 1);
  }
  for (let i = 0; i < 3; i++) {
    setTimeout(() => console.log(i), 1);
  }
 
//作用域链  变量的查找机制
// 上级作用域  函数在哪里定义的,那么该函数执行形成的作用的上级作用域就是谁
// 了解了上级作用域, 就比较容易查找变量对应的值
---------------------------
作者:HelloBytes
关于作者: JavaEE小新人,请多多赐教!
本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/HelloBytes/p/14177954.html