##函数 函数是就是在它的内部定义一些代码,聚和一下代码。封装了一段可以被重复调用执行的代码块。通过代码块可以实现大量代码的重复使用
1.1函数使用可分为两个步骤
1.声明函数
2.调用函数(函数不能自己调用)
function 函数名() {函数体 }
function : 函数
1)匿名函数的声明
var demo = function() { ... }
2)使用new关键词进行声明函数
var demo = new Function("")
<script>
function flower(){
//声明函数
console.log("一朝春尽红颜老");
}
flower();//调用函数
</script>
1.2封装一个函数
<script>
// 1.声明函数
function getSum() {
// 1. 1- 100 累加值
var sum = 0;
for(var i = 1; i <= 100; i++) {
sum += i;
}
console.log(sum)
}
// 2.函数进行调用
//函数可多次被调用
getSum();
getSum();
getSum();
getSum();
getSum();
getSum();
</script>
1.3函数的参数
<script>
// 1.参数放大add(参数1, 参数2)
// 2.当函数声明时,参数称为形参,而且使用变量的形式!!!
function add(num1, num2) {
console.log(num1 + num2)
}
// 3.在函数的调用时,参数称为实参,可以使用变量或者字面量
var a = 1;
add(a, 1)
function getSums(start, end) {
var sum = 0;
for(var i = start; i <= end; i++) {
sum += i;
}
}
getSums(2, 200)
getSums(3, 300)
</script>
1.4形参和实参个数匹配问题
<script>
function getSum(num1, num2) {
console.log(num2)
console.log(num1 + num2) // NaN
}
// 形参和实参匹配
getSum(1, 2) //3
getSum(1, 2, 3) //3
getSum(1)
//NaN(以为第二个没有传入参数,则默认为空,1+空,输出为NaN)
</script>
1.5函数的返回return
<script>
function add(num1, num2) {
return num1 + num2;
}
console.log(add(1, 2))
</script>
1.6返回两个数字中最大的值
<script>
//第一种利用三元表达式来做
function number(num1,num2){
return num1>num2?num1:num2;
}
console.log(number(2,9));
</script>
<script>
// 第二种做法
function number(num1,num2){
if(num1>num2){
return num1;
}
else{
return num2;
}
}
console.log(number(2,9));
</script>
1.7求数组中的最大值
<script>
function getArrMax(myarr) {
var max = myarr[0];
for(var i = 1; i <= myarr.length; i++) {
if(myarr[i] > max) {
max = myarr[i]
}
}
return max;
// 这里的 11111会不会打印?不会打印。return会终止当前函数的执行,
//下面的代码不再执行!!!
alert("11111")
}
// 调用时传递进去实参,
var arr = [5, 100, 290, 45, 1, 2]
console.log(getArrMax(arr))
</script>