文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

一篇文章带你了解JavaScript函数定义

2024-11-30 12:38

关注

一、函数声明

示例:

声明一个函数不会立即执行。

它们被“保存以供稍后使用”,稍后将被执行,当它们被调用(call)。



    
        
        项目
    
     


        


        

此示例调用一个函数,该函数执行计算并返回结果

分号是用来分隔执行JavaScript语句。因为一个函数声明不是一个可执行语句,它不用分号结尾。

二、函数表达式

一个JavaScript函数也可以使用 表达式 定义。

函数表达式可以存储在变量中。

var x = function (a, b) {return a * b};

完整代码:



    
        
        项目
    
    


        

一个函数可以存储到一个变量里面:

函数表达式存储在变量中后,变量可以作为函数使用。

var x = function (a, b) {
  return a * b
};
var z = x(4, 3);

上面的函数实际上是一个匿名函数(一个没有名字的函数),存储在变量中的函数不需要函数名。它们总是使用变量名调用(call)。

上面的函数用分号结束,因为它是一个可执行语句的一部分。

三、Function() 构造函数

1. 定义

JavaScript函数使用function关键字定义。函数还可以用一个内置的叫做Function()的构造函数来定义。

var myFunction = new Function("a", "b", "return a * b");


var x = myFunction(4, 3);

不同的写法

实际上不必使用函数构造函数。上面的例子也可以写成这样。

var myFunction = function (a, b) {
  return a * b
};


var x = myFunction(5, 5);

大多数时候,可以避免使用 new 关键词在JavaScript 。

2. Function 提升(Hoisting)

Hoisting是JavaScript的默认行为是移动声明当前范围的顶部。Hoisting 适用于变量声明和函数声明。

正因为如此,JavaScript函数可以调用之前就被声明:

myFunction(5);


function myFunction(y) {
    return y * y;
}

使用表达式定义函数不会被提升。

四、自调用函数

函数表达式可以进行 “自调用” 。

自动调用一个自调用表达式(自动启动),而不必调用.函数表达式将自动执行,如果表达式随后 (),不能自调用一个函数声明.您必须在函数的周围添加圆括号,以指示它是函数表达式:

上面的函数实际上是一个匿名的自调用 函数(没有名字的函数)。

函数可以用作值

JavaScript 函数可以用作值。




  
  项目




  

函数可以作为值对待:

x = myFunction(4,3) or x = 12

在这两种情况下, x 都会是12.

JavaScript函数可以用在表达式:

五、总结

本文主要介绍了JavaScript 函数的定义。通过讲解了函数的定义,函数的表达式,如何去定义构造函数,以及如何去调用自己创建的函数,每一点都做了详细的讲解,通过用丰富的案例帮助大家更好理解。

希望大家可以根据文章的内容,积极尝试,有时候看到别人实现起来很简单,但是到自己动手实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。

来源:前端进阶学习交流内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯