混淆了返回数组#map javascript

mqk*_*lin 6 javascript arrays functional-programming

我有代码:

function func1(){
  return 
    array.map(function(el){
      return el.method();
    });
}

function func2(){
  var confused = 
    array.map(function(el){
      return el.method();
    });
  return confused;
}
Run Code Online (Sandbox Code Playgroud)

为什么func1返回undefinedfunc2返回良好的价值(我需要)?

对不起我的英语不好.

Ale*_* T. 11

在JS引擎的内部,第一个例子看起来像这样,

function func1() {
  return;
    array.map(function(el){
      return el.method();
    });
};
Run Code Online (Sandbox Code Playgroud)

这就是你得到的原因undefined,之后不要添加新行return,因为返回语句后跟一个新行告诉JS intepreter应该在返回后插入一个半冒号.

function func1() {
  return array.map(function(el){
     return el.method();
  });
};
Run Code Online (Sandbox Code Playgroud)