Нарезка 2-х мерного массива строк

1

У меня есть строковый массив, где мне нужно отображать из второго пункта вперед. Но внутри каждого элемента мне нужно дополнительно отображать из второго элемента. Сказать

У меня есть массив

function myFunction() {
    var fruits = ["BBanana", "BOrange", "TLemon", "TApple", "YMango"];
    var citrus = fruits.slice(1).join("<br/>"); //skip first item
    document.getElementById("demo").innerHTML = citrus;
}

Ожидаемый результат

Orange
Lemon
Apple
Mango

Вместо

BOrange
TLemon
TApple
YMango

Как достичь улучшенной производительности?

Теги:
arrays
slice

3 ответа

3
Лучший ответ

После того, как вы отрезаете 1-й элемент, используйте карту Array # для создания списка элементов без 1-й буквы с использованием подстроки String #, а затем присоедините:

Карта, а затем присоединиться:

function myFunction() {
  var fruits = ["BBanana", "BOrange", "TLemon", "TApple", "YMango"];
  var citrus = fruits.slice(1)
    .map(function(str) {
      return str.substring(1);
    })
    .join("<br/>");
  demo.innerHTML = citrus;
}

myFunction();
<div id="demo"></div>
3

Вы можете использовать функцию уменьшения, это будет меньше кода, чем в других случаях

function myFunction() {
    const fruits = ["BBanana", "BOrange", "TLemon", "TApple", "YMango"];   
    const temp = fruits.slice(1).reduce( (ac, item) => ac + '${item.slice(1)}<br/>', '')

    document.getElementById("demo").innerHTML = temp;
}
1

var fruits = ["BBanana", "BOrange", "TLemon", "TApple", "YMango"];
    for(var i = 1; i < fruits.length; i++){
console.log(fruits[i].slice(1));
};
  • 0
    Эффективно ли это?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню