Return数组和函数returns另一个数组在一起的JS

Return array and function that returns another array together JS

我目前正在尝试 return 一个具有某些值的 array 和一个 return 另一个 arrayfunction。我该怎么做,我的 returns 基本上是 2 arrays 而不是 1 array1 function

例子

const array1 = [a, b, c]

const function = () => {
  if(something) {
    somevalues.map(e => {
      return ( 
        <div>{e}<div>
     )
   })
  } else {
    othervalues.map(f => {
      return ( 
        <div>{f}<div>
     )
   })
  }
} 

return [...array1, function] ??
示例中的

函数显然是 return 的函数而不是它自己的 return,我该如何解决这个问题?

const array1 = ['a', 'b', 'c'];
const something = true;

const func = () => {
  if(something) {
    return 'e';
  } else {
    return 'f';
  }
};

console.log([...array1, func()]); //[ "a", "b", "c", "e" ]

你需要

  • 实际上 return 来自您的函数。如果您不 return somevalues.map(...)othervalues.map(...) 的 return 值,那么您的函数将 return undefined.
  • 调用函数获取其 return 值
  • 将 return 值散布到结果数组中,就像您对静态数组所做的那样。

示例:

const array1 = [a, b, c]

const outerFunction = () => {

  const innerFunction = () => {
    if(something) {
      return somevalues.map(e => (<div>{e}<div>));
//    ^^^^^^
    } else {
      return othervalues.map(f => (<div>{f}<div>));
//    ^^^^^^
    }
  } 

  return [...array1, ...innerFunction()];
//                   ^^^             ^^
}