gpt4 book ai didi

javascript - 为什么我不能交换 javascript 字符串中的字符?

转载 作者:数据小太阳 更新时间:2023-10-29 04:26:15 25 4
gpt4 key购买 nike

我正在尝试交换数组的第一个和最后一个字符。但是 javascript 不允许我交换。我不想使用任何内置函数。

function swap(arr, first, last){
var temp = arr[first];
arr[first] = arr[last];
arr[last] = temp;
}

最佳答案

因为字符串是不可变的。

数组表示法就是:一种表示法,charAt 方法的快捷方式。您可以使用它按位置获取字符,但不能设置它们。

所以如果你想改变一些字符,你必须把字符串分成几个部分,然后从它们构建想要的新字符串:

function swapStr(str, first, last){
return str.substr(0, first)
+ str[last]
+ str.substring(first+1, last)
+ str[first]
+ str.substr(last+1);
}

或者,您可以将字符串转换为数组:

function swapStr(str, first, last){
var arr = str.split('');
swap(arr, first, last); // Your swap function
return arr.join('');
}

关于javascript - 为什么我不能交换 javascript 字符串中的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25345108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com