法一(1):

function _search(string) {
    return Array.from(string).some(el => isNaN(el) === false)
}
  • Array.from —— 对一个类似数组或可迭代对象创建一个新的浅拷贝的数组实例
  • Array.some —— 测试数组中是否有元素通过了被提供的函数测试,返回boolean型值
  • isNaN —— ①是否Number类型 ②尝试转换为数值 ③判断是否NaN。非数值-true;数值-false 【不推荐isNaN,因为空字符串' '会在②转换为0,返回false。不知道为什么这测试居然能通过】

法一(2):

function _search(string) {
    return Array.from(string).some(el => el > 0 && el < 9)
}
  • 数字和字符比较时,js将字符转为数字

法二(1):

function _search(string) {
    let regExp = new RegExp('\\d')
    return regExp.test(string)
}
  • RegExp.test —— 执行一个检索,看正则表达式与字符串是否匹配,返回boolean

法二(2):

function _search(string) {
    // .*匹配任意个数的字符  {1,}至少1位匹配
    let regExp = new RegExp('.*[0-9]{1,}.*')
    return regExp.test(string)
}

法三:

function _search(string) {
    return string.match('\\d') ? true : false
}
  • String.match(regexp) —— 返回字符串匹配正则表达式的结结果