javascript - 如何在 javascript 中使用大写函数映射数组?

标签 javascript jquery arrays uppercase

我对 php 是否有类似 array_map 或 array_walk 的函数感兴趣。

不需要遍历所有数组的 for。我可以自己做。

var array = ['dom', 'lun', 'mar', 'mer', 'gio', 'ven', 'sab'];
// i would like something like this if exists - function(array, 'upperCase');

最佳答案

您可以使用 $.map()为了申请String.toUpperCase() (或 String.toLocaleUpperCase() ,如果适用)到您的数组项:

var upperCasedArray = $.map(array, String.toUpperCase);

请注意,$.map() 构建了一个新数组。如果您想就地修改现有数组,可以使用 $.each()使用匿名函数:

$.each(array, function(index, item) {
    array[index] = item.toUpperCase();
});

更新:正如 afanasy 在下面的评论中正确指出的那样,直接映射 String.toUpperCase 只适用于基于 Gecko 的浏览器。

要支持其他浏览器,您可以提供自己的功能:

var upperCasedArray = $.map(array, function(item, index) {
    return item.toUpperCase();
});

关于javascript - 如何在 javascript 中使用大写函数映射数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9939803/

相关文章:

c - C中的十进制整数到二进制

javascript - 使用 jQuery 更改目标属性

javascript - 将按钮设置为 'active' 在 AngularJS 中不起作用

javascript - 选中时如何连接 radioButton ( <input type radio ../> ) 调用函数?

javascript - 在 Jade 中使用 JQuery 条件不起作用

C++ 从无符号字符数组创建 GUID

javascript - 我能做些什么来防止这个随机化 JS 代码中的重复?

javascript - 当我上传代码时,我的代码无法在 CodePen 或 JsFiddle 上运行,但在浏览器中运行良好。有人可以帮助我吗?

Jquery缓动效果

javascript - 使用 lodash 将对象转换为数组