js中的函数用法

本文详细介绍了JavaScript中的函数概念,包括声明(普通函数、箭头函数)、匿名函数及其自执行,以及函数表达式的使用。同时,讲解了事件处理函数的原理,并通过实例展示了如何给元素添加事件处理函数。最后,对比了C语言中的函数定义与调用方式,强调了函数在编程中的重要性。
摘要由CSDN通过智能技术生成

1.函数概念,声明及调用
JS中的函数:把一段需要重复使用的代码,用function语法包起来,方便重复调用,分块和简化代码。复杂一点的,也会加入封装、抽象、分类等思想。

声明方式:严格意义上两种方式,但还有匿名函数

方式一:
function 方法名(){
     //要执行的代码
}
方式二:ES6中声明方式箭头函数,()=>{} 
方式三:匿名函数,将函数存到变量里 var func = function(){};
函数调用:两种方式调用

调用方式一:名字(); 函数可以多次调用
//函数声明
function fn(){
    console.log(1);
}
 
//函数的调用
fn();
调用方式二:在事件中调用,直接写函数名,不使用括号

//函数声明
function fn(){
    console.log(1);
}
 
//函数在事件中的调用
document.onclick = fn;
2.函数表达式(匿名函数)
函数表达式:就是把函数存到变量里。

匿名函数:没有名字的函数;

匿名函数在使用时只有两种情况:

匿名函数自执行:声明后不需要调用就直接执行
(function(){
    console.log("匿名函数自执行");
})();
函数表达式:把函数存到变量,或将函数存到数组的对应位置里等,调用时通过变量或数组对应位置进行调用。调用时需要写括号。
//2,函数表达式:把函数存到变量或数组等里,调用时通过变量进行调用
var fn = function(){
    console.log("函数表达式:将函数存到变量里");
};
fn();//调用时需要写括号
 
//2,函数表达式:把函数存到数组第0位,调用时通过数组第0位进行调用
var arr = [];
arr[0] = function(){
     console.log("函数表达式:将函数存到数组的对应位置");
};
arr[0]();//调用时需要写括号要写括号

事件函数扩展:给元素添加事件的说法是不正确的。事件时元素本身就具有的特征,只是触发事件后,默认没有相关的一些处理。这种操作其实就是给元素的某个事件添加一个事件处理函数。当事件被触发后,判断到属于该事件类型,就触发该事件函数的处理函数。

可以通过console.dir()把对象的所有属性和方法打印出来,查看对象或元素本身具有的事件。

<script>
       //事件时元素本身就具有的特征,只不过,触发事件后,默认没有相关的一些处理。事件函数其实就是给元素的某个时间添加一个事件处理函数。
       //可以通过console.dir()把对象的所有属性和方法打印出来
       document.onclick = function(){
           console.log("事件的处理函数");
       };
       //当被触发后,判断到属于该事件类型,就触发该事件函数的处理函数
       if(typeof document.onclick == "function"){
         document.onclick();
       }
</script> 

3、函数定义与调用
在C语言中,函数定义格式为:
返回值类型 函数名(参数列表,….){
/*
函数功能
*/
return [变量名];
}

例如C语言里的主函数(程序的入口函数):

int main(void)
{
    return 0;
}
1
2
3
4
main为函数名,函数的返回值类型为int型,函数参数为void,函数中没有实现任何功能,返回值为0。void相当于无,就是什么都没有。

自定义的函数应该怎么弄?例如,写一个实现两个int数相加的函数:

int add(int a, int b)
{
    return a + b;
}
1
2
3
4
调用函数的方法就是:

int main(void)
{
    int result = add(1, 2);
    return 0;
}
1
2
3
4
5
这时候,add函数中,a的值为1,b的值为2,返回值result就是3。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值