练习小集合

106 阅读3分钟

1.替换违禁词

//需要:将字符串中6666替换为****
var str = '66661234666612347771234777';
//定义死循环,目的是一直重复替换操作,直到字符串内没有需要替换的字符
while(str.includes('6666')){

    str=str.replace('6666','****')
    //注意:这里需要将替换的值赋给原变量,如果定义新变量将导致死循环
}
console.log(str);

2.批量替换违禁词(可以重复上诉操作达到不同值的替换);

var str = '66661234666612347771234777';
//定义一个数组装载需要批量替换的字符串
 var arr = ['6666', '777'];
 //利用for循环遍历数组,求出需要替换的值
 for(var i=0;i<arr.length;i++){
  //定义死循环替换操作一直到字符串内无需批量替换内容即可;
     while(str.includes(arr[i)){
         str=str.replace(arr[i],'****')
     }
 }
 console.log(str);

3.将查询字符串转换为对象格式;

 // 模拟一个查询字符串
        var str = 'username=QF;age=18;abc=123'
        //定义一个空对象存储转换内容
        var obj={};
 //定义变量存储分割后的字符串内容(分割后为数组)
 var arr =str.split(';');
 //循环遍历数组内容,循环生成对象内容
 for(var i=0;i<arr.length;i++){
 //将数组内的内容以'='分割,得到类属性及属性值
     var newArr=arr[i].split('=');
 //将数组内第一个值作为属性以变量存储
     var key =newArr[0];
 //将数组内第二个值作为属性值以变量存储
     var value =newArr[1];
 //将属性值赋值给obj里面新增的属性key;
     obj[key]=value;
 }
  console.log(obj);
 
 //结果显示为:
 obj === {
            username: 'QF',
            age: 18,
            abc: 123
        }

3.1将查询字符串转换为对象格式(forEach方式)

var str = 'username=QF;age=18;abc=123'
//定义变量存储分割后的字符串内容(分割后为数组)
var arr =str.split(';');
//遍历数组,item为数组内的数据数值
arr.forEach(function(item){
//定义新数组存储数组数据单元以'='分割后的值;
    var newArr=item.split('=');
    //将值赋值赋值给对象中新增属性
    obj[newArr[0]]=newArr[1]
})
 console.log(obj);
 
 //将已转换好的对象再转回查询字符串格式;
 //定义空字符串
 var newStr ='';
 //for in 循环obj中的属性K,以字符串拼接属性,=属性值及;
 for(var k in obj){
     newStr += k + '=' +obj[k]+';';
 }
 去除多余的;
 newStr=newStr.slice(0,newStr.length-1);
 console.log(newStr);

4.封装函数求0-10将的随机整数,并存储如果随机生成10000次随机数,1-10间每个数出现的次数(各数值出现概率须接近版);

//随机数生成模块
function fn(){
    var num =Math.random();
    //存储1-10.99以下的随机数
    var num1=num*(10+1);
    //向下取整以保得到1-10的随机数
    var num2=Math.floor(num1);
    //返回随机数值
    return num2;
}

//以对象存储各随机数是生成100000次的概率
//定义空对象存储生成的随机数及出现次数;
var obj ={};
//for循环使生成100000个随机数
for(var i=0;i<100000;i++){
//将生成的随机数存储再变量sum
    var sum =fn();
//如果对象内没有这个随机数,这写入这个随机数并让出现次数记为1
    if(obj[sum]==undefined){
        obj[sum]=1;
    }else{
//对象内存在该随机数,再次出现,出现次数+1;
        obj[sum]++;
    }
}
//输出对象,查看结果;
console.log(obj);