我的最终目标是验证输入字段。输入可以是字母也可以是数字。


当前回答

这段代码还有助于“检测给定字符串中的数字”,当发现数字时,它会停止执行。

function hasDigitFind(_str_) {
  this._code_ = 10;  /*When empty string found*/
  var _strArray = [];

  if (_str_ !== '' || _str_ !== undefined || _str_ !== null) {
    _strArray = _str_.split('');
    for(var i = 0; i < _strArray.length; i++) {
      if(!isNaN(parseInt(_strArray[i]))) {
        this._code_ = -1;
        break;
      } else {
        this._code_ = 1;
      }
    }

  }
  return this._code_;
}

其他回答

要测试任何字符是否为数字,无需过度修饰❓,可根据需要进行调整。

const s = "EMA618" 函数hasInt(我){ 设I = 1,a = me.split(""),b = "",c = ""; a.forEach(函数(e) { 如果(! isNaN (e)) { console.log(' contains NUMBER«${e}»AT POSITION ${a.indexOf(e)} => TOTAL COUNT ${i} ') C += e 我+ + } else {b += e} }) console.log('字符串是«${b}»,数字是«${c}»') If (i === 0){ 返回假 //返回b }其他{ 还真 //返回+c } } hasInt (s)

这段代码还有助于“检测给定字符串中的数字”,当发现数字时,它会停止执行。

function hasDigitFind(_str_) {
  this._code_ = 10;  /*When empty string found*/
  var _strArray = [];

  if (_str_ !== '' || _str_ !== undefined || _str_ !== null) {
    _strArray = _str_.split('');
    for(var i = 0; i < _strArray.length; i++) {
      if(!isNaN(parseInt(_strArray[i]))) {
        this._code_ = -1;
        break;
      } else {
        this._code_ = 1;
      }
    }

  }
  return this._code_;
}

这就是你需要的。

      var hasNumber = /\d/;   
      hasNumber.test("ABC33SDF");  //true
      hasNumber.test("ABCSDF");  //false 

如果我没记错的话,这个问题需要“contains number”,而不是“is number”。所以:

function hasNumber(myString) {
  return /\d/.test(myString);
}

我们可以使用!/[^a-zA-Z]/.test(e)来检查它。 只需运行snippet并检查。

handleValueChange() { 如果(! / [^ a-zA-Z] / test (. getelementbyid(“textbox_id”)value)) { var x = document.getElementById('result'); x.innerHTML = '字符串不包含数字'; }其他{ var x = document.getElementById('result'); x.innerHTML = 'String does contains number'; } } 输入{ 填充:5 px; } <input type="text" id="textbox_id" placeholder="Enter string here…" oninput="handleValueChange()" > < p id = "结果" > < / p >