函数的使用

定义函数:

function 函数名(){

函数体

}

函数参数:(形参和实参)

形参:函数定义时()里面的变量,该变量可以在函数体中使用,形式参数里的数据来源于实际参数

实参:是指在函数调用时写在()中具体的数据,在函数调用时,实际参数把数据传给形式参数。

在函数体中执行时候,让形式参数里有具体的数据

eg:调用函数找出数组最大值
arr1 =[1,4,8,5,2];
arr2 =[1,4,6,7,8,9];
arr3 =[2,5,6,3,8,9];
function getArrayMax(array) {
var max =array[0];
for(var i=0;i<array.length;i++) {
if(max<array[i]) {
max =array[i];
}
}
document.write(max+"<br>");
}
getArrayMax(arr1);
getArrayMax(arr2);
getArrayMax(arr3);

多个参数:(没有数量限制,形式参数和实际参数书写顺序一致)

eg:
定义一个函数,计算x的y次方
function pow (num1,num2) {
    //次方计算
    }
pow(2,3);//num1为2,num2为3

返回值(return):函数的一种数据输出机制,我们可以通过返回值实现将函数里面的数据传递到函数的外面,即函数调用后我们可以继续使用函数里的数据。(默认返回值为未定义)

function 函数名() {
return 要返回的数据;//表示函数调用后要返回的值
}
var 变量名 = 函数名();//函数调用时,用变量进行接收,变量保存的数据就是return的值

eg:
function add(num) {
var sum =num+5;
return sum;
};
var s=add(10);
document.write(s);//15

妙用:

  1. 执行return时候,会终止当前函数调用,该次函数调用,剩余的代码不执行。
  2. 对函数传入的数据进行检测,提高函数的健壮性,健壮性越高,代码质量越好,即bug少
  3. 提前终止执行

arguments

概念:针对每个函数内部的一个类数组对象,实现函数调用时保存所有的实际参数

作用:函数调用时保存所有实际参数

使用:只能在函数体里面使用

特点:1、类数组可以实现遍历操作。通过下标来使用arguments里的数据,但不能添加、修改操作。

function demo() {
console.log(arguments);
}
eg:
function num() {
            document.write(arguments[0]); //将第一个数据传递进来
        }
        num(1, 2, 3, 4, 5);

应用:自定义函数,如果实际参数数量不固定,那么可以 使用arguments及遍历获取每一个实际参数来处理(模拟push、任意字符串拼接)

箭头函数(ES6)

ES6提供新的定义函数的语法

作用:代码简洁

语法:

var 函数名= (形式参数)=>{
函数体
}
  • 箭头函数调用和普通函数无区别
  • 箭头函数只能是定义后才能使用
  • 如果箭头函数只有一句return代码,可以省略关键字以及{}
  • var add=(num1,num2)=>num1+num2;
  • 如果箭头函数只有一个形式参数,那么包围形式参数的()可以省略不写
  • var add=num1=>num1+num2;

eval函数(内置函数)

把某个字符串作为js代码执行并返回执行结果

语法:

var num =eval("2+2");
document.write(num);//4

substr\substring 内置函数

字符串内置api,用于获取字符串一部分字符

语法:

substr

字符串.substr(字符串开始下标,字符串字符数量)

//获取hello
var str ="hello word";
var newArr=str.substr(0,5);
document.write(newArr)//hello
//获取hello word
var newArrs=str.substr(0,str.length-1);
document.write(newArrs)//hello

substring(不包含结束下标)

字符串.substrimg(字符串开始下标,字符串结束下标)

//获取hello
var str ="hello word";
var newArr=str.substring(0,5);
document.write(newArr)//hello
//获取hello word
var newArrs=str.sbustring(0,str.length-1);
documet.write(newArrs);

a

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值