替换字符串中的多个字母 javascript
replacing multiple letter in a string javascript
您好,我正在比较两个字符串,并将字符串 B 中的所有小写字母 - 字符串 A 中的大写字母 - 变为大写,我的代码的问题是它只像这样更改最后一个字母
var i;
var x;
function switchItUp(before, after) {
for (i = 0; i < before.length; i++) {
if (before.charAt(i) == before.charAt(i).toUpperCase()) {
x = after.replace(after.charAt(i), after.charAt(i).toUpperCase());
}
}
console.log(x);
}
switchItUp("HiYouThere", "biyouthere");
这将导致 "biyouThere" 以任何方式将其更改为 "HiYouThere" ?
您必须分配每个更改。现在可以使用了
var i;
var x;
function switchItUp(before, after) {
for (i = 0; i < before.length; i++) {
if (before.charAt(i) == before.charAt(i).toUpperCase()) {
x = after.replace(after.charAt(i), after.charAt(i).toUpperCase());
after = x;
//console.log("inside"+x);
}
}
console.log(x);
}
switchItUp("HiYouThere", "biyouthere");
我已正确修改您的代码以使其正常工作。您需要在每个循环中将操作应用于同一个变量 x,而不是之后。
function switchItUp(before, after) {
var x = after;
for (i = 0; i < before.length; i++) {
if (before.charAt(i) == before.charAt(i).toUpperCase()) {
x = x.replace(after.charAt(i), after.charAt(i).toUpperCase());
}
}
console.log(x);
}
这是代码:
function switchItUp(before, after) {
for (var i = 0; i < before.length; i++) {
if (before.charAt(i) == before.charAt(i).toUpperCase()) {
after = after.replace(after.charAt(i), after.charAt(i).toUpperCase());
}
}
return after;
}
var after = switchItUp("HiYouThere", "biyouthere");
document.body.innerHTML+='<p style="color: black;">'+ after + '<p/>';
您好,我正在比较两个字符串,并将字符串 B 中的所有小写字母 - 字符串 A 中的大写字母 - 变为大写,我的代码的问题是它只像这样更改最后一个字母
var i;
var x;
function switchItUp(before, after) {
for (i = 0; i < before.length; i++) {
if (before.charAt(i) == before.charAt(i).toUpperCase()) {
x = after.replace(after.charAt(i), after.charAt(i).toUpperCase());
}
}
console.log(x);
}
switchItUp("HiYouThere", "biyouthere");
这将导致 "biyouThere" 以任何方式将其更改为 "HiYouThere" ?
您必须分配每个更改。现在可以使用了
var i;
var x;
function switchItUp(before, after) {
for (i = 0; i < before.length; i++) {
if (before.charAt(i) == before.charAt(i).toUpperCase()) {
x = after.replace(after.charAt(i), after.charAt(i).toUpperCase());
after = x;
//console.log("inside"+x);
}
}
console.log(x);
}
switchItUp("HiYouThere", "biyouthere");
我已正确修改您的代码以使其正常工作。您需要在每个循环中将操作应用于同一个变量 x,而不是之后。
function switchItUp(before, after) {
var x = after;
for (i = 0; i < before.length; i++) {
if (before.charAt(i) == before.charAt(i).toUpperCase()) {
x = x.replace(after.charAt(i), after.charAt(i).toUpperCase());
}
}
console.log(x);
}
这是代码:
function switchItUp(before, after) {
for (var i = 0; i < before.length; i++) {
if (before.charAt(i) == before.charAt(i).toUpperCase()) {
after = after.replace(after.charAt(i), after.charAt(i).toUpperCase());
}
}
return after;
}
var after = switchItUp("HiYouThere", "biyouthere");
document.body.innerHTML+='<p style="color: black;">'+ after + '<p/>';