检查它是否是map()函数中数组的最后一个元素

Sam*_*ack 3 html javascript

我有一个字符串数组,我想在不同的行上打印它们.

我正在使用<hr />这个,但因为它现在在我的代码中,它将在最后一个字符串之后放置另一个中断,事实上我想避免.有任何想法吗?

这是我的代码:

return myArray.map((text, index) => (
    <span key={index}>
        {myArray[index]}
        {<hr />}
    </span>
));
Run Code Online (Sandbox Code Playgroud)

Nen*_*car 10

您可以通过检查是否有下一个元素来检查它的最后一个元素 arr[i + 1]

var arr = ['a', 'b', 'c']
var html = arr.map(function(e, i) {
  return `<span key="${i}">${e}</span>${arr[i+1] ? '<hr>' : ''}` 
})

document.body.innerHTML += html.join('')
Run Code Online (Sandbox Code Playgroud)


小智 8

myArray.map((text, index, {length}) => (
  /* ... your code ... */
  if(index + 1 === length){ //last element

  }
));
//{length} === myArray.length; third argument is an array
Run Code Online (Sandbox Code Playgroud)