79

有没有一种简单的方法可以删除javascript中某个位置的字符?

例如,如果我有字符串"Hello World",我可以删除位置 3 的字符吗?

我要寻找的结果如下:

"Helo World"

这个问题不是如何使用 JavaScript 从字符串中删除字符?,因为这个问题是关于删除特定位置的字符,而这个问题是关于删除字符的所有实例。

4

8 回答 8

135

这取决于您找到以下内容的难易slice()程度,这些内容使用简单的 String 方法(在本例中)。

var str = "Hello World";
str = str.slice(0, 3) + str.slice(4);
console.log(str)

于 2012-06-20T09:26:49.213 回答
18

你可以这样试试!!

var str ="Hello World";
var position = 6;//its 1 based
var newStr = str.substring(0,position - 1) + str.substring(postion, str.length);
alert(newStr);

这是现场示例:http: //jsbin.com/ogagaq

于 2012-06-20T09:33:11.860 回答
16

将字符串转为数组,在指定索引处剪切一个字符并转回字符串

let str = 'Hello World'.split('')

str.splice(3, 1)
str = str.join('')

// str = 'Helo World'.
于 2017-04-10T11:37:40.960 回答
5

如果您省略特定的索引字符,则使用此方法

function removeByIndex(str,index) {
      return str.slice(0,index) + str.slice(index+1);
}
    
var str = "Hello world", index=3;
console.log(removeByIndex(str,index));

// Output: "Helo world"
于 2017-05-03T12:57:54.263 回答
4
    var str = 'Hello World';
                str = setCharAt(str, 3, '');
                alert(str);

function setCharAt(str, index, chr)
        {
            if (index > str.length - 1) return str;
            return str.substr(0, index) + chr + str.substr(index + 1);
        }
于 2012-06-20T09:32:32.500 回答
1

你可以使用substring()方法。前任,

var x = "Hello world"
var x = x.substring(0, i) + 'h' + x.substring(i+1);
于 2012-06-20T09:46:10.293 回答
0

嗨starbeamrainbowlabs,

您可以使用以下方法执行此操作:

var oldValue = "pic quality, hello" ;
var newValue =  "hello";
var oldValueLength = oldValue.length ;
var newValueLength = newValue.length ;
var from = oldValue.search(newValue) ;
var to = from + newValueLength ;
var nes = oldValue.substr(0,from) + oldValue.substr(to,oldValueLength);
console.log(nes);

我在我的 javascript 控制台中对此进行了测试,因此您也可以查看一下 谢谢

于 2016-02-04T10:52:58.570 回答
-1
var str = 'Hello World',
    i = 3,
    result = str.substr(0, i-1)+str.substring(i);

alert(result);

的值i不应该小于那么1

于 2012-06-20T09:33:43.447 回答