函数判断闰年
function runnian(year){
if(year % 4 == 0 && year % 100 != 0 || year % 400 ==0){
return true
}else{
return false
}
}
let year = 1904
console.log(runnian(year))
或者
function isRunYear(year){
var flag = false
if((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)){
flag = true
}
return flag
}
console.log(isRunYear(2022))
扩展:输入年份,写出当前年份的二月有多少天
function printDays(){
let year = prompt('请输入年份:')
if(isRunYear(year)){
alert(`${year}年是闰年,二月份有29天`)
}else{
alert(`${year}年是平年,二月份有28天`)
}
}
printDays()
function isRunYear(year){
var flag = false
if((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)){
flag = true
}
return flag
}
求任意个数的最大值
参数是任意个数
数组、集合、最值问题
1、找参照物,把数组或者集合第一个当做最值
2、遍历数组(集合)
3、将最值和数组里的元素依次比较
4、但大于(小于)最值时,给最值重新赋值
function getMax(){
let max = arguments[0]
for(let i = 0; i <arguments.length;i++){
if(arguments[i]>max){
max = arguments[i]
}
}
return max
}
console.log(getMax(25,56,98,7,52))
利用函数翻转数组
简易版:创建新数组
function reverse1(arr){
let newArr = []
for(let i = arr.length-1;i>=0;i--){
newArr[newArr.length] = arr[i]
}
return newArr
}
let arr1 = reverse1([58,59,72,36,15,86])
console.log(arr1)
//升级版:原数组翻转
function reverse2(arr){
for(let i = 0;i<arr.length/2;i++){
let temp = arr[i]
arr[i] = arr[arr.length-1-i]
arr[arr.length-1-i] = temp
}
return arr
}
let arr2 = reverse2([74,15,28,96,34])
console.log(arr2)
利用函数冒泡排序
function sort(arr){
for(let i = 0;i<arr.length-1;i++){
for(let j = 0;j<arr.length -1- i;j++){
if(arr[j]>arr[j+1]){
let temp = arr[j+1]
arr[j+1] = arr[j]
arr[j] = temp
}
}
}
return arr
}
let arr = [25,58,84,36,18]
console.log(sort(arr))
利用函数选择排序
function sort(arr) {
for (let i = 0; i < arr.length - 1; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
let temp = arr[j]
arr[j] = arr[i]
arr[i] = temp
}
}
}
return arr
}
let arr = [25, 65, 48, 91, 13]
console.log(sort(arr))