Javascript - 使数组索引 toLowerCase() 不起作用
Javascript - Making Array Index toLowerCase() not working
我试图将所有数组索引设为小写字符串,但它不起作用。我在这里查看了其他答案并尝试了他们的解决方案,例如在添加 toLowerCase
之前使用 toString()
但它不起作用,这很奇怪。
我创建了问题的 jsfiddle here。
JS:
$(colorArr).each(function(i, item) // loop thru each of elements in colorArr and make lowercase + trim
{
if(colorArr[i] !== undefined) // check if colorArr index undefined
{
colorArr[i].toString().toLowerCase().trim(); // FIX HERE
/* TRIED - DIDN'T WORK!
colorArr[i].toLowerCase().trim();
*/
}
});
您需要将值设置回来
应该是
colorArr[i] = colorArr[i].toString().toLowerCase().trim(); // FIX HERE
或者干脆
colorArr = colorArr.map(function(value){ return value ? value.toLowerCase().trim() : ""; });
我更新了你的fiddle
https://jsfiddle.net/af91r2cq/6/
colorArr[i] = colorArr[i].toString().toLowerCase().trim(); // FIX HERE
你的路真的很近;)
另一种将数组中所有定义的值更改为小写的方法是使用 jQuery.map
函数,如下所示:
colorArr = $.map(colorArr, function(item, i) {
if(item !== undefined) {
return item.toString().toLowerCase().trim();
}
});
我试图将所有数组索引设为小写字符串,但它不起作用。我在这里查看了其他答案并尝试了他们的解决方案,例如在添加 toLowerCase
之前使用 toString()
但它不起作用,这很奇怪。
我创建了问题的 jsfiddle here。
JS:
$(colorArr).each(function(i, item) // loop thru each of elements in colorArr and make lowercase + trim
{
if(colorArr[i] !== undefined) // check if colorArr index undefined
{
colorArr[i].toString().toLowerCase().trim(); // FIX HERE
/* TRIED - DIDN'T WORK!
colorArr[i].toLowerCase().trim();
*/
}
});
您需要将值设置回来
应该是
colorArr[i] = colorArr[i].toString().toLowerCase().trim(); // FIX HERE
或者干脆
colorArr = colorArr.map(function(value){ return value ? value.toLowerCase().trim() : ""; });
我更新了你的fiddle
https://jsfiddle.net/af91r2cq/6/
colorArr[i] = colorArr[i].toString().toLowerCase().trim(); // FIX HERE
你的路真的很近;)
另一种将数组中所有定义的值更改为小写的方法是使用 jQuery.map
函数,如下所示:
colorArr = $.map(colorArr, function(item, i) {
if(item !== undefined) {
return item.toString().toLowerCase().trim();
}
});