Преобразование массива в верхний регистр

У меня есть массив, который я хочу изменить в верхний регистр, но я не могу заставить его работать. Пожалуйста, помогите мне.

var array2 = ["melon","banana","apple","orange","lemon"];

array2.toUpperCase()

Я также пробовал нижеследующее, но он не работает.

array2.map(toUpperCase);

Заранее спасибо!

Ответы

Ответ 2

toUpperCase() не меняет значение. Попробуйте array2 = array2.map(function (e) { return e.toUpperCase() });

Ответ 3

Карта - это то, что я бы рекомендовал, но здесь альтернативный вариант, который может помочь кому-то, кто хочет понять применение, используемое на прототипе объектов.

Это пример массива, заимствующего метод String.toUpperCase() с помощью.apply() и использования его в указанном массиве. Массив принудительно применяется к строке с использованием.apply(), а затем обратно в массив с верхним регистром, используя метод.split().

arr = ["fulu", "nulu", "hulu"];
var arrToUp = String.prototype.toUpperCase.apply(arr).split(",");

console.log(arrToUp)
//["FULU", "NULU", "HULU"]

Ответ 4

Попробуйте выполнить цикл через каждый элемент и сделать его верхним регистром.

for(var i = 0; i < array2.length; i++){
    array2[i] = array2[i].toUpperCase();
}

Ответ 5

Вы можете добавить метод toUpperCase() в Array.prototype:

Array.prototype.toUpperCase = function(){
   return this.map( (el) => (typeof el === "string") ? el.toUpperCase() : el)}

Ответ 6

Насколько я знаю, JavaScript не поддерживает функцию toUpperCase() для массивов. Вы должны создать цикл for или foreach для цикла через массив и вызвать .toUpperCase() для каждого элемента массива.

Вы также можете создать небольшую функцию, например: fooobar.com/questions/346745/...

Ответ 7

var arr = ["hamed","hassan","hema","zeiad","saad","omar","ali","sayed","ahmed"];
var str = String(arr).toUpperCase().split(",");

Ответ 8

вы можете использовать это:

var a = ['this','is','test'];

a.map(f=>{ return f.toUpperCase(); });

Ответ 9

var name = ['Amit','Sumit','Kumit'];
var newname = name.join('-').toUpperCase().split();
console.log(newname);