js函数的使用和声明
Posted by xiongmao; tagged with js函数 , js函数的返回值 , arguments的使用 , js函数的调佣 , js函数的声明
导读:
认识js函数
函数:是做某件或者实现某种功能
关键字:function 函数名(){}
使用函数必须调用函数,否则不会输出结果
function getSum(){
console.log('这是第一次使用函数');
}
getSum();
// 利用函数求1-100的和
var sum = 0;
function getSum(){
for(var i =1; i<=100; i++){
sum +=i;
}
console.log(sum);
}
getSum();
{lamp/}
函数的参数
函数的参数
形参:定义的函数括号里边的为形参 形参默认值为undefined 输出结果为NaN
实参:调用函数括号里边的为实参
function getSum1(形参1,形参2){
}
getSum1(实参1,实参2);
注意:
1.如果实参的个数和形参个数一致,则正常输出结果
2.如果实参的个数多余形参的个数,会取到形参的个数
3.如果实参的个数小于形参,多余的形参定位为undefined,最终结果就是NaN
4.形参可以看做是不同声明的变量,声明变量没有接收值就是undefined
5.建议 我们尽量让实参个数和形参相匹配
// 列子1 求任意两个数的和
/* function getSum2(num1,num2){
console.log(sum1 + sum2);
}
getSum2(5,10); */
// 例子2:求任意两个数之间的和
var sum = 0;
function getSum3(num3,num4){
for(var i = num3; i<=num4; i++){
sum +=i;
}
console.log(sum);
}
getSum3(1,100);
函数的返回值
函数的返回值格式
function 函数名(){
return 需要返回的结果;
}
函数名();
1. 我们函数只是实现某种功能,最终的结果需要返回值的调用者函数名 ,通过return实现
2. 只要函数遇到return 就把后面的结果 返回给函数值 函数名() = return 后面的结果
3. 代码验证
function getResult(){
return 66;
}
getResult(); //getResult() = 66
console.log(getResult());
// 例子 求任意两个数的和
function getSum(num1,num2){
return num1 + num2;
}
console.log(getSum(1,2));
// 例子2 求两个数的最大值
function getMax(num3,num4){
if(num3 > num4){
return num3;
}else{
return num4;
}
//方法二
return num3 > num4 ? num3 : num4;
}
console.log(getMax(1,5));
console.log(getMax(2,6));
例子3 求数组的最大值
function getArrMax(arr){
var max = arr[0];
for(var i = 1; i<= arr.length; i++){
if(arr[i] > arr[0]){
max = arr[i]
}
}
return max;
}
var maxRulest = getArrMax([1,2,10,3,65,27,100]);
console.log(maxRulest);
注意:
1.当出现return 时,后边出现的语句不在执行
2.当return 有多个返回值时,只会返回最后一个值
3.当函数没有数据时返回unidentified
break,continue,return的区别
break : 结束当前的循环体
continue:跳出本次循环,继续执行下次循环
return: 不仅可以退出循环,还能够返回return 语句中的值,同时还可以
结束当前的函数体内的代码
{lamp/}
函数中arguments的使用
arguments 的使用 只有函数才有arguments对象 而且每个函数都内置好了这个arguments
function fh(){
// console.log(arguments); //里面存储了所有传递过来的实参 arguments = [1,2,3]
// console.log(arguments.length);
//console.log(arguments[2]);
// 我们可以按照数组的方式遍历arguments
for(var i = 0;i < arguments.length;i++){
console.log(argumennts[i]);
}
}
fn(1,2,3);
fn(1,2,3,4,5);
伪数组 并不是真正意义上的数组
1.具有数组的 lenght 属性
2. 按照索引的方式进行存储
3.它没有真正数组的些方法 pop() push() 等等
利用函数求任意个数的最大值
function fn() {
var max = arguments[0];
for(var i=1; i < arguments.length; i++){
if(arguments[i] > max){
max = arguments[i];
}
}
return max;
}
console.log(fn(1,10,20,3,100,200));
console.log(fn(1,10,20,3,100,300));
{lamp/}
函数的调用
/*用户输入年份,来判断2月是否为闰年来返回天数*/
function backDay() {
var year = prompt('请输入要查询的年份:');
if(isRunYear(year)){
alert('当前年份为闰年2月为29天');
}else{
alert('当前年份为平年2月为28天');
}
}
backDay();
function isRunYear(year){
var flag = false;
if(year % 4 == 0 && year % 100 != 0 || year % 400 ==0){
flag = true;
}
return flag;
}
{lamp/}
函数的两种声明
函数的两种声明方式
1.利用函数关键字自定义函数(命名函数)
function fn(){
}
fn();
2.函数表达式(匿名函数)
var 变量名 = function(){};
var fun = function(aru){
console.log('我是函数表达式');
console.log(aru);
}
fun('123');
注意:
1.fun是变量 不是函数名
2.函数表达式声明方式跟声明变量差不多,只不过变量里面存的是值,而函数表达式里面存的是函数
3.函数表达式也可以进行传递参数
2021-12-20 20:51:08 星期一