JS替换不适用于字符串[重复]

尝试用变量替换字符串中所有#实例。它不起作用,但也不能重新调整任何错误。

answer_form = '<textarea name="answer_#" rows="5"></textarea>'+

'<input type="file" name="img_#" />';

question_num = 5;

answer_form.replace(/#/g, question_num);

哈希仍然存在。

不确定我缺少什么?

回答:

.replace() 返回一个新字符串(它不会修改现有字符串),因此您需要:

answer_form = answer_form.replace(/#/g, question_num);

question_num尽管自动类型转换可能会为您处理字符串,但您可能还应该创建一个字符串。

仅供参考,在Javascript中,字符串是不可变的-现有字符串永远不会被修改。因此,这使得修改字符串的任何方法(如concatreplaceslicesubstrsubstringtoLowerCasetoUpperCase,等…)总是返回一个新的字符串。

以上是 JS替换不适用于字符串[重复] 的全部内容, 来源链接: utcz.com/qa/404111.html

回到顶部