其他分享
首页 > 其他分享> > # 常见案例

# 常见案例

作者:互联网

目录

常见案例

1.利用函数封装方式,翻转任意一个数组

//利用函数翻转任意数组 reverse 翻转
function reverse(arr){
	var newArr = [];
	for(i = arr.length; i >=0; i--){
		newArr[newArr.length] = arr[i];
	}
	return newArr;
}
var arr1 = reverse([1,2,5,8,9]);
console.log(arr1);
//9,8,5,2,1

2.利用函数封装方式,对数组排序--冒泡排序

//利用函数冒泡排序 sort 排序
function sort(arr){
	for(var i = 0; i < arr.length-1; i++ ){
		for(var j = 0; j <= arr.length  - i - 1; j++){
			if(arr[j] > arr[j+1]){
				var temp = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = temp;
			}
		}
	}
	return arr;
}
var arr1 = sort(1,4,,6,3,2);
console.log(arr1);
//1,2,3,4,6

3.判断闰年

//要求:输入一个年份,判断是否是闰年(闰年:能被4整除并且不能被100整除,或者能被400整除)
//利用函数判断闰年
function isRunYear(year){
//如果是闰年我们返回true,否则返回 false
	var flag = false;
	if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0){
		flag = true;
	}
	return flag;
}
console.log(isRunYear(2000));

4.倒计时

function countDown(time) {
     var nowTime = +new Date(); // 返回的是当前时间总的毫秒数
     var inputTime = +new Date(time); // 返回得是输入的时间总的毫秒数
     var times = (inputTime - nowTime) / 1000; // times是剩余时间总的秒数 1秒=1000毫秒
     var d = parseInt(times / 60 / 60 / 24); // 天
     d = d < 10 ? '0' + d : d;
     var h = parseInt(times / 60 / 60 % 24); // 时
     h = h < 10 ? '0' + h : h;
     var m = parseInt(times / 60 % 60); // 分
     m = m < 10 ? '0' + m : m;
     var s = parseInt(times % 60); // 秒
     s = s < 10 ? '0' + s : s;
     return d + '天' + h + '时' + m + '分' + s + '秒';
}
console.log(countDown('2022-9-4 16:00:00'));
var date = new Date;
lconsole.log(date);

5.数组去重

// 有一个数组,要求去除数组中的重复元素
// 目标:把就数组里面不重复的元素选取出来放到新数组中,重复的元素只保留一个,放到新数组中去重
// 核心算法:遍历旧数组,然后拿着旧数组元素去查询新数组,如果该元素在新数组中没有出现过,就添加1,否则不添加
 //如何知道该元素是否存在?利用 新数组.indexOf(数组元素),如果返回是-1,就说明新数组里面没有该元素

function unique(arr) {
    var newArr = [];
    for (i = 0; i < arr.length; i++) {
        if (newArr.indexOf(arr[i]) === -1) {
              newArr.push(arr[i]);
        }
    }
    return newArr;
}
var demo = unique(['red', 'blue', 'yellow', 'red', 'green', 'yellow']);
console.log(demo);

6.查找字符串中重复元素

//查找字符串:"abcoecfjqpdojfjiow"中所有o出现的位置及次数
//核心算法:先查找第一个o出现的位置
//然后,只要indexOf返回的结果不是-1,就继续往后查找
//因为indexOf只能查找到第一个,所以后面的查找,利用第二个参数,当索引加1,从而继续查找
 var str = "obcoecfjqpdojfjiow";
 var index = str.indexOf('o');
 var num = 0;
 while (index !== -1) {
      console.log(index);
      num++;
      index = str.indexOf('o', index + 1);
 }
 console.log('“o”输入的次数为:' + num);

标签:arr,console,log,newArr,常见,案例,数组,var
来源: https://www.cnblogs.com/chichi0002/p/16658006.html