Javascript基础——函数

一、什么是函数?

当我们看到"函数"这两个字的时候,一定会想,它与数学上的函数有什么区别呢?

首先我们要知道,Javascript中的函数与数学上的函数不是一种东西。JS中的函数是一种通过调用来完成具体业务的一段代码块。最核心的目的是将可重复执行的操作进行封装,然后供调用方无限制的调用。说白了函数就是为了完成一定的功能的封装的语句体。

在程序设计中,可以将一段经常使用的代码"封装起来",在需要使用的时候直接调用,这种"封装"就是函数。

二、函数的分类

在javascript中,函数可分为两种,一种是自定义函数,另一种是系统内置函数,而系统函数里面还包括预定义函数。

预定义函数不属于任何对象,它们在使用时不需要通过任何对象来应用。它是一种全局函数,可直接使用。下面是一些常用的预定义函数。

1、eval()   将字符串转换成数字,可以直接执行Js代码

1、isNaN  用来计算一个参数以确定它是否为非数字,如果是NaN,则返回true,否则返回false,isNaN无法判断是否是NaN类型,只有值是true的时候,才能输出true,其他情况全部是false。因为isNaN()会先进行类型转换,然后再判断是否是NaN类型。

3、parseInt()/parseFloat()   将数字字符串转化为一个数值

4、isFinite()    用来确定参数是否是一个有限数值.也就是说,如果该参数为非数字NaN,正无穷数,或负无穷数,则返回false,否则返回true;如果是字符串类型的数字,将会自动关转化为数字型.

5、escape函数/unescape()    将字符串进行编码和解码​,这样就可以在所有的计算机上读取该字符串。

三、自定义函数

定义函数:

function 函数名(){  

  函数体;

 }

说明:

 function       定义函数关键字,

“函数名”      是你给函数取的名字,

“函数体”      是为完成特定功能的代码。

函数声明后不会立即执行,会在我们需要的时候调用到。可以在某事件发生时直接调用函数(比如当用户点击按钮时),并且可由 JavaScript 在任何位置进行调用。

通过下面这段代码可以更好的理解

 <script>
        function eat(){
            alert("正在吃饭");
        }
         eat();

 </script> 

上面的代码是定义了一个名为eat的函数,它执行的功能是通过下面的eat()调用函数,输出"正在吃饭"。这是第一种调用方法。对上边的eat()函数还可以用第二种调用方法。

<button onclick="eat()"></botton>//放在<body>标签内

四、带参函数

带参函数就是能传递参数的函数,在执行函数时需要接受某个值。只有在调用它的时候传递值函数才能够执行。

函数的参数可以为一个或者多个。调用一个函数时所传入的参数为实参,实参决定着形参真正的值。

下面是带两个参数的函数,param1和param2

function testFun(param1, param2) {
console.log(param1, param2);
return 返回值
}

接着我们调用testFun:

testFun("Hello","World");

我们传递了两个参数, "Hello""World"。在函数内部,param1 等于“Hello”,param2 等于“World”。请注意,testFun 函数可以多次调用,每次调用时传递的参数会决定形参的实际值。

注意:

  1.参数列表:表示函数的输入

  2.函数主体:表示为了实现某一功能代码块

  3.函数可以有返回值,也可以没有 return 进行返回

五、匿名函数

匿名函数就是没有名字的函数

它的定义形式如下:

function(){

函数体;

}

可以看出,它和普通函数的区别在于它没有函数名。它可以通过下面的方式输出。function前面的波浪线可以替换成其他字符。如"+","-"等

<script>
         
     ~function(){
          alert("匿名函数");
      }();
 </script>

六、作用域

局部变量:在函数内部声明的变量,在函数外部并不能访问

function fun(){
   var a = 10;
    
}

console.log(a);  //报错

全局变量:函数外部声明的变量,在函数内部可以访问。

var a = 10;
function fun(){
    console.log(a);
}

fun();  //输出10

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值