将数组转换为大写

Bjo*_*now 22 javascript arrays

我有一个数组,我想改为大写,但我不能让它工作.请帮我.

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

array2.toUpperCase()
Run Code Online (Sandbox Code Playgroud)

我也尝试了以下但它既不起作用.

array2.map(toUpperCase);
Run Code Online (Sandbox Code Playgroud)

提前致谢!

Jos*_* M. 50

你应该在map中使用handler函数:

var array2 = ["melon","banana","apple","orange","lemon"];
array2 = array2.map(function(x){ return x.toUpperCase() })
Run Code Online (Sandbox Code Playgroud)

有关地图的更多信息

编辑:是的,你可以做

toUpper = function(x){ 
  return x.toUpperCase();
};
array2 = array2.map(toUpper);
Run Code Online (Sandbox Code Playgroud)

  • new_array = array2.map(function(x){return x.toUpperCase()}); (map返回一个新数组,但该示例表明它更改了原始数组) (3认同)

mar*_*cel 6

toUpperCase()不要改变价值.尝试array2 = array2.map(function (e) { return e.toUpperCase() });

  • 马塞尔是对的。他的答案是正确的。您需要能够将 map 函数存储在另一个变量中,而不是像 @eddyparkinson 指出的那样尝试改变原始数组。 (2认同)

小智 5

你可以使用这个:

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

a.map(f=>{ return f.toUpperCase(); });
Run Code Online (Sandbox Code Playgroud)