javascript指定位置字符串替换

function replacePos(strObj,pos,replacetext)
{
var str = strObj.substr(0,pos-1) + replacetext + strObj.substring(pos,strObj.length);
return str;
}
var text="abcdefg";
var mystr = replacePos(text,3,"n");
mystr = replacePos(mystr,5,"m");
alert(mystr);
谁能详细解释下,初学,不大懂是怎么执行的


代码:自己保存后,改成html,如果要一行一行知道结果,自行添加alert();

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "

<html xmlns="


<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<style type="text/css">
body
{
font-family: Arial;
font-size: 12px;
margin: 20px;
}
</style>
<script type="text/javascript" language="javascript">
// 目的: 组成新字符串
// 参数1: 源字符串
// 参数2: 起始位置
// 参数3: 目标字符串
// 返回值: 新字符串
function replacePos(strObj,pos,replacetext)
{
//var str = strObj.substr(0,pos-1) + replacetext + strObj.substring(pos,strObj.length);
// 上一行可分成
var str = strObj.substr(0, pos-1); // 取左边到指定位置的字符串
str += replacetext; // 与目标字符串相连
str += strObj.substring(pos,strObj.length); // 取指定位置到右边的字符串
// 现在可以知道这三行的意思为: 在指定位置添加目标字符串
return str; // 返回新的字符串
}
function show()
{
var text="abcdefg";
var mystr = replacePos(text,3,"n"); // 源目标为text, 位置为3, 目标字符串为"n"
mystr = replacePos(mystr,5,"m");    // 源目标为mystr, 位置为5, 目标字符串为"m"
alert(mystr); // 弹出警告框
}
</script>
</head>

<body>
<div>
<form>
<input type="button" name="test" value="测试" onclick="show();"/>
</form>
</div>
</body>

</html>

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-10-24
substr是字符串截取函数
length 是求字符串长度函数

strObj.substr(0,pso-1),这是截取字符串test(abcdefg)中的0~(pos-1)个字符 后面同理

在 var mystr = replacePos(test,3,"n")=>abc+n+defg=>abdndefg
在 mystr = replacePost(mystr,5,"m")=>abcnd+m+efg=>abcndmefg

不懂可以追问,希望可以帮到你追问

如果全部用substring,这段代码效果不变,该怎么改?

追答

你这里新填加了2个字符m、n ,你想问的是什么意思,没听明白

追问

代码实际执行后的效果是:abcdefg变成abndmfg。我也以为是增加,可实际结果不是这样,为啥?

js替换指定字符
下面就让我们一起来了解一下吧:js中字符串替换指定字符所用到的函数一般是replace()方法,replace()方法通常是用于在字符串中用一些字符替换另一些字符,或是替换一个与正则表达式匹配的子串。具体的语法格式为:stringObject.replace(regexp\/substr,replacement)参数说明:regexp\/substr必需。规定子字符串...

javascript指定位置字符串替换
\/\/ 取指定位置到右边的字符串\/\/ 现在可以知道这三行的意思为: 在指定位置添加目标字符串return str;\/\/ 返回新的字符串}function show(){var text="abcdefg";var mystr = replacePos(text,

js替换字符串某个字符,js修改字符串中指定字符
1. 替换字符串中所有的特定字符:假设需要将所有 'a' 替换为 'e',可以编写如下代码片段:javascript function replaceAll(str, target, replacement) { return str.split(target).join(replacement);} let originalString = 'any string with a';let modifiedString = replaceAll(originalString, 'a',...

js替换字符串某个字符,js修改字符串中指定字符
替换字符串中所有特定字符为另一个字符 为了替换字符串中所有特定字符为另一个字符,可以利用`String.prototype.replace()`方法。这提供了强大的灵活性,可以使用正则表达式来精确匹配和替换字符。例如,要将所有字符 'a' 替换为 'e',可以按照以下步骤操作:javascript const str = "apple";const replac...

js replace(a,b)之替换字符串中所有指定字符的方法
在JavaScript中,replace()函数是一个强大的字符串操作工具,用于替换字符串中的特定字符。让我们通过两个例子来理解它的用法。首先,当你使用基本的字符串作为第一个参数,如 var str = 'abcadeacf'; str1 = str.replace('a', 'o'); 这时,replace()会替换字符串中第一个出现的'a'字符,结果...

js 字符串替换
在JavaScript中进行字符串替换主要通过`str.replace()`方法实现。其基本语法如下:`str.replace("需要替换的字符串", "新字符串")`,此方法仅替换首次出现的匹配字符串。`str.replace(\/需要替换的字符串\/g, "新字符串")`,通过添加`g`标志,进行全局替换,匹配字符串中的所有出现。示例应用:在API...

javascript中,字符置换方法
var str = "a,b,c,d,e";\/\/ 用","分割str,获取数组var arr = str.split(',');\/\/ 已知位置,替换指定位置的值arr[2] = 'f';\/\/ 用","链接数组的值,返回字符串var newstr = arr.join(',');alert(newstr);

web前端---4种方法替换JavaScript里所有出现的字符串
在JavaScript编程中,遇到需要替换字符串全出现情况时,常规的replace方法可能不尽如人意。以下是四种方法来实现字符串的全替换:首先,使用replace配合正则表达式时,务必添加全局标志"g",确保所有匹配都被替换,例如:或者,可以封装一个函数来简化操作,但需注意特殊字符的转义问题,如:其次,对于新引入的...

javascript字符串替换
给你一个思路 \/\/先把 的innerHTML 取出来赋值到一个变量里 var bodyInfo = document.body.innerHTML;\/\/然后 var bIndex = indexOf('') 这个 var bIndex = indexOf('');var msg = substring(bIndex);这个时候 msg 就是你要的东东了 ...

js中如何将一个字符串中的;替换成,
1、新建html文件,添加body标签,定义一个变量并赋值字符串,然后将变量输出:2、用replace函数将字符串中的“;”替换成“,”,代码为“a.replace(\/;\/, ',')”,然后将后的字符串重新赋值给原变量:3、如果原字符串中含有多个“;”,这时可以用全局替换,代码为“a.replace(\/;\/g, ',');”,...

相似回答