js面试题-找出字符串中的数字,并替换为*

for循环实现

function replace(){
   var str='ba123jj4589';
   var arrStr = str.split(""); //将字符串转换为数组
   for(let i=0;i<arrStr.length;i++){
   		if(arrStr[i]>='0'&&arrStr[i]<='9'){
   			arrStr[i]='*';
   		}
   }
   arrStr=arrStr.join("");
   console.log(arrStr);
}
replace();

正则+循环方法

function replace(){
	var str='ba123jj45d89';
	var reg = new RegExp("^[0-9]*$");
	var arrStr=str.split("");
	for(let i=0;i<arrStr.length;i++){
		if(reg.test(arrStr[i])){
			arrStr[i] = '*';
		}
	}
	arrStr == arrStr.join(""); //将数组转换为字符串,根据你的需求决定要不要这一步;
	console.log(arrStr);
}

### 正则一行解决
console.log('ba123jj45d89'.replace(/[0-9]/g,"*");

©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页