猿问

使用 Es5 和 Es6 的闭包

var add = function add(x, z) {

  if (z == undefined) {

    return function(y) {

      return x + y;

    }

  } else {

    return x + z

  }

}

当我用箭头函数编写代码不起作用时,上面的代码运行良好


var add = add(x, z) => {

  if (z == undefined) {

    return (y) => {

      return x + y;

    }

  } else {

    return x + z

  }

}


慕工程0101907
浏览 252回答 3
3回答

沧海一幻觉

只是语法错误,因为箭头函数应该像这里一样声明替换add(x, z) =>为(x, z) =>

MMTTMM

请删除 add 关键字,尝试使用 const 并 let declaratio 因为它们是块作用域,使用 var 分配不必要的内存,并在 JS 中托管变量const add = (x, z) => {  if (z == undefined) {    return (y) => {      return x + y;    }  } else {    return x + z  }}

茅侃侃

只是语法错误。玩得开心。var add = (x, z) => {  if (z == undefined) {    return (y) => {      return x + y;    }  } else {    return x + z;  }}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答