01-函数的定义与调用
在JS中函数是一种复杂数据类型,用于存储代码。 函数,一次封装多处调用
定义:
function 函数名(){
函数体
}
进行封装的函数,必须调用里面的代码块才能生效,
function fn() {
let str = '<table width="800" height="500" border="1" rules="all">';
for(let col=1;col<=9;col++){ // 1 2
str += '<tr>';
for(let row=1;row<= col;row++){ // 1 2 3 4 ... 10 1 2 3 4 ... 10
str += `<td>${row}*${col}=${row * col}</td>`;
}
str += '</tr>';
}
str += '</table>';
document.write(str)
}
02-函数的定义与调用练习
// 需求:封装一个函数,对数组求和。
function fn() {
//debugger 调试一下
let arr = [2,4,4,4,8,6]
let atr = 0;
for (let i=0; i<arr.length; i++){
// atr = atr +arr[i];
atr+=arr[i];
}
document.write(atr);
}
//....
//....
//....
//....
fn(); //28
//....
//....
//....
//....
03-函数的参数
/*
参数的作用是用于在调用函数是向函数内部传递数据
参数分形参与实参。
实参与形参之间就是一个是传递一个是接收
形参:
函数定义时的参数,
在函数内部就是一个变量
*/
function fn(x,y){
let ret = x + y ;
console.log(ret);
}
// 调用
//函数调用时的参数,实参数可以变量,也可以是具体的值
//实参:函数调用时的参数
let z = 10;
fn(z,200); // 对x=z 与y=200求和 =210
fn(50,90); // 对x=30 与y=50 求和 =140
/*
小结:
形参 与 实参,共用作用将外部的数据传递到函数内部。
实参是传,形参是收
数据的传递是按顺序
形参只在内部有效
*/
04-函数返回值
- 返回值的注意事项
- 1。使用
return- 2。一个函数中只能执行到一次
return- 3.如果想返回多个值,可以使用
[ ]的方式,
//函数的返回值
//return 数据
// 函数内部return的数据会返回到函数的调用处
function fn(){
// 定义一个变量模拟函数内部生成的数据
let data = 200;
// 函数内部的数据可以在内部访问
console.log(data);
// 将data中的数据返回
return data;
}
// 外部要接收
let ret = fn();
console.log(ret) //200
求任意数组中的最大值和最小值,并返回最大值和最小值。
// arr:类型是数组
function getMaxByArr(arr) {
let max = arr[0];
let min = arr[0];
for (let i = 1; i < arr.length; i++) {
if (max < arr[i]) {
max = arr[i]
}
if (min > arr[i]) {
min = arr[i]
}
}
// 将最大值返回
return [max,min];
}
let ret = getMaxByArr([1, 23, 243, 534, 5, 456, 57, 7])
//console.log('数组中的最大值是' + max)
alert(ret[0]); // 534
alert(ret[1]); // 1
05-函数的练习
需求:封装一个函数,求任意数组的最大值,
function fn(arr) {
// let arr = [21,34,56,87,45,98]
let atr = arr[0];
for (let i=1; i<arr.length; i++){
if (arr[i]>atr){
atr= arr[i];
}
}
document.write(atr);
}
fn([21,34,56,87,47875,98]);
fn([21,34,56,87,45,98]);
fn([21,34,1510,87,45,98]);
fn([21,34,56,5557,45,98]);