js中常用题目整理

本文介绍了JavaScript中数组的基本操作,包括去重、排序及元素的增删等,并展示了如何统计字符串中各字符出现的频率,找出重复次数最多的字符。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.数组去重

var arr = [2,2,2,3,3,3,4,5];
var arr01 =[];
for (var i = 0; i < arr.length; i++) {
   if(arr01.indexOf(arr[i]) < 0){
	 arr01.push(arr[i]);
   }
}
console.log(arr01);

2.数组排序

    1.1插入排序
var arr = [2,20,25,31,30,3,4,5];
for (var i = 0; i < arr.length; i++) {
    for (var j = 0; j < arr.length-1-i; j++) {
        if(arr[j]>arr[j+1]){
            var num = arr[j];
            arr[j] = arr[j+1];
            arr[j+1] = num;
        }
    }
}
console.log(arr);
  1.2冒泡排序
var arr = [2,20,25,31,30,3,4,5];
for (var i = 0; i < arr.length-1; i++) {
    for (var j = i+1; j < arr.length; j++) {
        if(arr[i]>arr[j]){
            var num = arr[i];
            arr[i] = arr[j];
            arr[j] = num;
        }
    }
}
console.log(arr);

3.字符串中找到重复次数最多的字符

var str = 'aaabbbcccdddaaa';
var obj = {};
var arr = str.split('');
for (var i = 0; i < arr.length; i++) {
    if(obj[arr[i]]){
        obj[arr[i]]++;
    }else{
        obj[arr[i]] = 1;
    }
}
console.log(obj);
var max = 0;
var index;
for(var j in obj){
    if(obj[j]>max){
        max = obj[j];
        index = j;
    }
}
console.log("次数最多的字符为"+index+"出现了"+max+"次");

4.获取URL的参数值

function Url(url){
    var obj ={};
    var arr = url.split("?")[1];
    console.log(arr);
    var arr01 = arr.split("&");
    console.log(arr01);
    for (var i = 0; i < arr01.length; i++) {
        obj[arr01[i].split("=")[0]] = arr01[i].split("=")[1];
    console.log(obj);
}
    console.log(obj);
}
Url("www.baidu.com?name=jack&age=18");

5.检测null

var a = null;		console.log(Object.prototype.toString.call(a));

6.数组方法(split,splice,slice,join)

// 1.splice 删除 (返回删除的元素,起始位置,删除的个数,替代的元素)
var arr = [1,2,3,4,5];
console.log(arr.splice(0,2,3));
console.log(arr);
// 2.slice 截取 (返回截取的元素,起始位置,结束位置)
var arr = [1,2,3,4,5];
console.log(arr.slice(0,2));
// 3.split 切割
var arr = 'abcdef';
console.log(arr.split(''));
var arr = [1,2,3,4,5];
// 4.join 将数组转换成字符串
arr.join('');
console.log(arr);


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值