手动删除字符串 - JavaScript 中的空格
Manually remove whitespace in String - JavaScript
我试图制作一种算法,该算法将执行与此函数相同的操作:var string= string.split(' ').join('');
因此,如果我有以下字符串:Hello how are you
它就会变得Hellohowareyou
我不想使用.replace
或regex
或.split
但是,该算法似乎没有对字符串进行任何更改:
var x = prompt("Enter String");
for (var i=0; i<=x.length;i++) {
if (x[i] == " ") {
x[i] = "";
}
}
alert(x);
遍历字符串复制字符,跳过空格。您的代码不起作用,因为字符串是不可变的,因此您无法通过执行x[i] = 'c'
来更改字符串中的字符。
请参阅 JavaScript 字符串是不可变的吗?我需要JavaScript中的"字符串生成器"吗?
var string = 'Hello How are you';
var noSpaces = '';
for (var i = 0; i < string.length; i++) {
if (string.charAt(i) != ' ' ) {
noSpaces += string.charAt(i);
}
}
alert(noSpaces);
您的代码不起作用,因为对于字符串,类似于getter
,索引方法(x[0] = "w"
)没有setter
。不能将字符串视为数组。它是一种特殊形式的对象(不可变对象),可以使用索引访问,但严格来说,这种方法中没有setter。
您可以通过像下面这样更改来修复代码,
var x = prompt("Enter sum or 'e' to Exit");
var modified = "";
for (var i=0; i<x.length;i++) {
if (x[i] != " ") {
modified += x[i];
}
}
alert(modified);
您可以通过其他更好的方式做到这一点,如下所示,通过使用regex
,
var x = prompt("Enter sum or 'e' to Exit");
x = x.replace(/'s/g,"");
在您的代码中,您只需比较值并尝试用相同的变量替换,但无法用变量替换相同的值,只是将您的值与新变量存储,如下所示
var x = prompt("Enter sum or 'e' to Exit");
var v='';
for (var i=0; i<x.length;i++) {
if (x[i] != " ") {
v +=x[i];
}
}
alert(v);
这是链接 https://jsfiddle.net/rqL3cvog/
另一种更新变量x
而不使用其他变量的方法是使用反向for
循环并使用slice
在i
之前和之后获取字符串:-
var x = prompt("Enter String");
for (var i = x.length; i--;) {
if (x[i] == " ") {
x = x.slice(0, i) + x.slice(i + 1, x.length);
}
}
alert(x);
或者,具有substr
的反向for
循环:-
var x = prompt("Enter String");
for (var i = x.length; i--;) {
if (x[i] == " ") {
x = x.substr(0, i) + x.substr(i + 1);
}
}
alert(x);
Hie ,
请检查下面的代码。它很长。但其他人可以帮助缩短它。检查输出
var x = prompt("Hello how are you");
y = ''
flag = false
for (var i=0; i<x.length;i++) {
if (x[i] == " ") {
flag= true
}
else {
if (flag == true) {
y += ' '
y += x[i]
flag = false
}
else {
y += x[i]
}
}
}
alert(y)
输出为:"你好,你好吗"
当你在x[i]中得到一个空格时,代码只是设置一个标志,当你得到下一个字符时,它只是添加一个空格而不是空格,将下一个字符添加到输出字符串中,并再次将标志设置为false。
- Javascript,有没有一种方法可以将数组写成没有逗号或空格的单个文本字符串
- 如何将字符串拆分为字符,但在javascript中保留空格
- Javascript Regexp-不接受空格,但应该接受
- 如何替换JavaScript字符串中除字母和数字之外的所有内容(空格/符号)
- JavaScript从字符串中删除尾随空格和句点
- 需要javascript函数允许逗号和空格
- 在php和javascript onClick之间传递带有空格的值
- 用于在Javascript中删除多个空格的特殊字符
- JavaScript Regex,用于由特定字符串包围的数字和空格
- 简单的Javascript方式,在输入字段的每5位数字后添加一个空格
- 如何在城市和州代码之间用逗号将城市和州从短划线格式化为空格.(javascript)
- javascript在其中设置空格时会中断
- 正则表达式匹配空白或空格 JavaScript
- 传递“&”和空格 javascript
- 禁用文本区域中的多个空格 JavaScript
- 正则表达式检查字符串是否仅包含字母数字字符和空格 - javascript
- 如何将字符串中的逗号替换为空格-javascript
- 按空格 javascript 拆分字符串
- 在文本区域中保留空格(JavaScript变量)
- 替换空格javascript