寻找一个函数,它接受一个字符的字符串和位置,并使整个小写,但然后大写的位置传递。不确定实现这一目标的最佳方法是什么,特别是有可能转换多个角色?有什么想法吗?
答案 0 :(得分:1)
我不会给你代码来解决这个问题,但我可以给你一个推动:
.split()
(使用它,就像拆分中的值一样)现在你有一个数组中的每个字符,你可以通过characterArray[N-1]
访问每个第N个字符,其中N代表位置:
characterArray[N-1] = characterArray[N-1].toUpperCase();
最后,使用.join()
再次对其进行字符串处理。 -1是要更正为零索引,数组第一个键是0
,而不是1
答案 1 :(得分:0)
好的,所以基于你所说的真实用例是: “我有一堆”特殊条件“变量名称,我必须考虑并转换为适当的情况,可以以任何格式传递(例如)。”
在这种情况下,我会创建一个这些变量名的数组:
var names = ["purchaseID", "scAdd", "scCheckout"];
然后将每个的小写版本与传入参数的小写版本进行比较,如果它们相等,则将传入的参数设置为等于存储在数组中的值:
var transformString = function(str) {
for (var i = 0; i < names.length; i++) {
if (str.toLowerCase() === names[i].toLowerCase()){
return names[i];
}
}
};
请参阅小提琴:http://jsfiddle.net/7Acb4/