一、需求
找出所有数字组成一个数组
str=‘123asd12sad122as1’
结果是
arr=[123,12,122,1]
var str = '212asdas234dfgh67a3'
function getNumberArr(str) {
var arr = []
var s = ''
for (var i = 0; i < str.length; i++) {
// console.log(str[i])
if (!isNaN(str[i])) {
// 是数字
s += str[i]
} else {
if (s !== '') {
arr.push(s);
s = ''
}
}
}
// 最后在执行一次
if (s !== '') {
arr.push(s);
s = ''
}
return arr
}
console.log(getNumberArr(str))
方法二、
// 方法二
function getNumberArr(str) {
var s = ''
var Newarr = []
for (i = 0; i < str.length; i++) {
s += Number(str[i])
//console.log(s) //212NaNNaNNaNNaNNaN234NaNNaNNaNNaN67NaN3
} // 拆成数组
var arr = s.split('NaN')
for (var j = 0; j < arr.length; j++) {
if (arr[j]) {
Newarr.push(arr[j])
}
}
return Newarr
}
console.log(getNumberArr(str)) //["212", "234", "67", "3"]
// 方法三 正则
var str = '212asdas234dfgh67a3'
function getArr(str) {
return str.match(/\d+/g)
}
console.log(getArr(str))
// ["212", "234", "67", "3"]
版权声明:本文为bin_2659017380原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。