gpt4 book ai didi

JavaScript 用变量切换?

转载 作者:行者123 更新时间:2023-11-28 15:39:25 25 4
gpt4 key购买 nike

我想检查一个字符串是否包含某个字母,然后删除该字母。

jsFiddle — http://jsfiddle.net/nNb5S/6/

例如,如果您输入...

  • XhelloX
  • 你好呀
  • ZhelloZ

..在“输入”文本区域中,“结果”应该返回...

  • 你好
  • 你好
  • 你好

我已经弄清楚了,但我想知道是否可以通过 Switch 来完成?

这是我的工作代码::

function doSomething() {

var input = document.getElementById("h"),
result = document.getElementById("m");

var x = /x/gi;
var y = /y/gi;
var z = /z/gi;

if(input.value.indexOf(x)) {
result.value = input.value.replace(x,"");
}
if(input.value.indexOf(y)) {
result.value = result.value.replace(y,"");
}
if(input.value.indexOf(z)) {
result.value = result.value.replace(z,"");
}

}

这是我的开关代码::下面的代码在定义arg时有效;但是,我不想定义它。

function doSomething() {

var input = document.getElementById("h"),
result = document.getElementById("m");

var x = /x/gi;
var y = /y/gi;
var z = /z/gi;

/*arg = x;*/ // ONLY WORKS WHEN YOU DEFINE arg. HOW DO YOU DEFINE arg AS ANY OF THE VARIABLES?

var iO = input.value.indexOf(arg);

switch (arg) {

case x:
result.value = input.value.replace(x, "");
break;
case y:
result.value = result.value.replace(y, "");
break;
case z:
result.value = result.value.replace(z, "");
break;

}
}

最佳答案

switch 语句绝对不是正确的选择。更好的选择是使用单个正则表达式替换,如下所示:

function doSomething() {
var input = document.getElementById("h"),
result = document.getElementById("m");
result.value = input.value.replace(/[xyz]/gi, "");
}

Demonstration

但是由于您已经在使用 jQuery,因此可以进一步简化:

function doSomething() {
$("#m").val($("#h").val().replace(/[xyz]/gi, ""));
}

Demonstration

关于JavaScript 用变量切换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24393864/

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