1.函数
1.0函数的封装:把一个或者多个功能通过函数的方式封装起来,对外只提供一个简单的函数接口。
1.1利用函数计算1-100之间的累加和
function getNum() {
var sum = 0;
for (var i = 1; i <= 100; i++) {
sum += i;
}
console.log(sum);
}
getNum();//5050
getNum();
2.参数
function getNum(num1, num2) {
var sum = 0;
for (var i = num1; i <= num2; i++) {
sum += i;
}
console.log(sum);
}
2.0如果实参的个数多于形参的个数 会取到形参的个数
getNum(1,2,3);
2.1如果实参的个数小于形参的个数 多于的形参定义为undefined结果为NaN
3.函数返回值
function cook(aru) {
return aru;
}
console.log(cook('红烧鱼'));
4.利用函数 求两个数的最大值
function getMax(num1,num2) {
return num1>num2 ? num1:num2;
}
console.log(getMax(1,2));
console.log(getMax(3,1));
5.利用函数求数组[2,5,99,101,67,77,1000] 中的最大值
function getMax(array) {
var max =array[0] ;
for (let i = 0; i < array.length; i++) {
if (max<array[i]) {
max = array[i];
}
}
return max;
}
var re = getMax([2,5,99,101,67,77,1000]);//我们经常使用一个变量来接受 函数的返回结果
console.log(re);
6.return:
6.0 return后面的代码不会被执行。
6.1 return返回的结果是最后一个值。
求任意两个数加减乘除的结果
function gerResult(num1,num2) {
return [num1+num2,num1-num2,num1*num2,num1/num2];
}
var re = gerResult(1,3);
//遍历数组中的元素
for (let i = 0; i < re.length; i++) {
console.log(re[i]);
}
6.2函数有return则返回的是return后面的值,如果没有return则返回undefined。
7.arguments:伪数组(只有函数才有arguments对象,它也是所有函数都内置好的对象)
7.0 具有数组的length属性
7.1 按照索引的方式进行存储
function fn() {
console.log(arguments);
console.log(arguments.length);//2
console.log(arguments[1]);//23
}
fn(1,23);
8.数组反转:
function reverse(arr) {
var newArr = [];
for(i = arr.length-1;i >= 0;i--){
newArr[newArr.length] = arr[i];
}
return newArr;
}
var re = reverse([1,2,3,4,5]);
console.log(re);
9.函数可以调用另外一个函数:
function fn1() {
console.log(11);
fn2();
}
fn1();
function fn2() {
console.log(22);
}
10.判断闰年平年2月的天数的案例:
function backDay() {
var year = prompt('请您输入年份');
if (isRunNian(year)) {
alert('当前年份是闰年2月份有29天');
} else {
alert('当前年份是平年2月份有28天');
}
}
backDay();
function isRunNian(year) {
var flag = false;
if (year % 4 == 0&&year % 100 !==0||year %400==0) {
flag = true;
}
return flag;
}
11.匿名函数:
11.0 fun是变量名 不是函数名
11.1 函数表达式也可以传递参数
11.2 函数表达式里面存的是函数
var fun = function (aru){
console.log('函数表达式');
console.log(aru);
}
fun ('中原小哥');