函数封装
函数章节学习中,敲了一些有代表性的案例… 巩固一下函数的运用吧…
运行以后的图就不再放这里了,直接复制代码去VS-code里运行一下吧…
一·用户输入年份,判断这一年的2月有多少天:
<script>
// 用户输入年份,判断这一年的2月有多少天 利用函数的调用
function isRanNian(year) {
var flag = false;
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
flag = true;
}
return flag;
}
function backDay() {
var year = prompt('请输入当前年份:');
if (isRanNian(year)) {
alert('今年2月有28天');
} else {
alert('今年2月有29天');
}
}
backDay();
</script>
二. 翻转数组:
<script>
// 翻转数组
function reverse(arr) {
var new_arr = [];
for (var i = arr.length - 1; i >= 0; i--) {
new_arr[new_arr.length] = arr[i];
}
return new_arr;
}
alert(reverse([2, 3]));
</script>
三. 利用函数求任意数量的最大值
<script>
// 利用函数求任意数量的最大值
function max_num() {
var max = arguments[0];
for (var i = 1; i < arguments.length; i++) {
if (max < arguments[i]) {
max = arguments[i];
}
}
return max;
}
var max = max_num(1, 5, 3, 54, 8, 5);
alert('待比较最大值的数:1, 5, 3, 54, 8, 5' + '\n' + '最大值为:' + max);
</script>
四.冒泡排序
- 正序:
<script>
// 冒泡排序
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]) {
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]]
}
}
}
return arr;
}
alert(sort([2, 6, 4, 5, 8]));
</script>
- 倒序:
<script>
// 冒泡排序
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]) {
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]]
}
}
}
return arr;
}
alert(sort([2, 6, 4, 5, 8]));
</script>
五:判断闰年的案例
<script>
// 判断闰年的案例
function year(num) {
if (num % 4 == 0 && num % 100 != 0 || num % 400 == 0) {
return "闰年";
} else {
return '平年';
}
}
alert(year(2000));
</script>