use*_*048 17 javascript arrays jquery uppercase
我很感兴趣,如果有任何函数,如来自php的array_map或array_walk.
不需要为所有阵列旅行.我可以为自己做到这一点.
var array = ['dom', 'lun', 'mar', 'mer', 'gio', 'ven', 'sab'];
// i would like something like this if exists - function(array, 'upperCase');
Fré*_*idi 21
您可以使用$ .map()将String.toUpperCase()(或String.toLocaleUpperCase(),如果适用)应用于数组项:
var upperCasedArray = $.map(array, String.toUpperCase);
请注意,$.map()构建一个新数组.如果要在适当位置修改现有数组,可以将$ .each()与匿名函数一起使用:
$.each(array, function(index, item) {
    array[index] = item.toUpperCase();
});
更新:正如在下面的评论中正确指出的那样,String.toUpperCase直接映射仅适用于基于Gecko的浏览器.
要支持其他浏览器,您可以提供自己的功能:
var upperCasedArray = $.map(array, function(item, index) {
    return item.toUpperCase();
});
查看JavaScript Array.map以获取官方JavaScript地图功能的信息.您可以在那里使用样本来查看该功能的工作原理.尝试将其复制到示例框中:
var array = ['dom', 'lun', 'mar', 'mer', 'gio', 'ven', 'sab'];
var uppers = array.map(function(x) { return x.toUpperCase(); });
console.log(uppers);
它将打印:
DOM,LUN,MAR,MER,GIO,VEN,SAB
这可能是一种矫枉过正,但你也可以这样做
var upperCaseArray = array.map(String.prototype.toUpperCase.call.bind(String.prototype.toUpperCase));
您可以为它实现一个功能:
Array.prototype.myUcase=function()
{
  for (i=0;i<this.length;i++)
    {
    this[i]=this[i].toUpperCase();
    }
}
用法
var fruits=["Banana","Orange","Apple","Mango"];
fruits.myUcase();
结果
BANANA,ORANGE,APPLE,MANGO 
参考链接
这是一行代码,无需创建循环或与 ES3 兼容的函数,它也更快,因为您只调用 toUpperCase 一次
// watch out for strings with comma (eg: ["hi, max"]) then use custom join/split()
// or just use something safer such as Array.map()
var uppercaseArray = array.toString().toUpperCase().split(",");
var uppercaseArray = array.join(0).toUpperCase().split(0);
var uppercaseArray = (array+"").toUpperCase().split(",");
| 归档时间: | 
 | 
| 查看次数: | 18744 次 | 
| 最近记录: |