1、函数声明:通过函数可封装任意多条语句,且可在任意地方、任何时候调用执行。
eg. function box(){//无参函数
    
alert("只有函数被调用,我才会被执行");
    }
  
    box(); //直接调用函数
eg.  function box(name,age){//带参函数
      alert("姓名:"+name+",年龄:"+age);
   
    }
    box("张三",19);//传参调用函数
2、return返回值:带参或不带参的函数都没有定义返回值,而是调用函数直接执行。事实上任何函数都可通过return语句跟后面要返回的值来实现返回值。
eg. function box(){//无参函数
    
return("我被返回了");
    }
  
    alert(box()); //直接调用函数得到返回值并输出
eg.  function box(name,age){//带参函数
      return("姓名:"+name+",年龄:"+age);
   
    }
    alert(box("张三",19));//传参调用函数得到返回值并输出
eg. function box(num1,num2){//函数将返回值赋给变量,通过变量进行操作
    return num1 * num2;
    }
var num = box(10,5);//函数得到的返回值赋给变量
alet(num);//50
eg. function box(num){//此处的return可退出当前函数
    if( num < 5) return num; //满足条件才返回num,此时num=10,不会小于5,所以返回100
     return 100;  //第一个操作数为false,直接返回地二个操作数。
    }
   alert(box(10)); //100
3、arguments对象:通过该对象接受传递过来的参数,不论多少也不论是否统一
eg. function box(){
    return arguments[0]+'|'[+arguments[1]];//得到每次参数的值 1|2
  }
  
  alert(box(1,2,3,4,5,6));//传递参数后结果是 1|2
eg. function box(){
    return arguments.length;//length属性得到参数数量6
  }
  
  alert(box(1,2,3,4,5,6));
eg.length属性扩展运用
    function box4() {
          var sum = 0;
          if (arguments.length == 0) return sum;//若是没有参数,直接退出函数
          for (var i = 0; i < arguments.length; i++) {//如果有参数就循环叠加,最后输出总和
            sum = sum + arguments[i];
          }
          return sum;
        }
        alert(box4(2,6,9));//17
eg.  function box5(su) {
          return su + 100;
        }
     function box5(su) { //会执行这个函数,没有函数重载功能
          return su +50;
        }
        alert(box5(150));//200
eg1. var getName = function(){
alert(1);
    }
   
    function getName(){
      alert(2);
   }
    getName();//1
对比
eg2.  function getName(){
      alert(2);
   }
   var getName = function(){
alert(1);
    }
   getName();//1
eg1.和eg2.两次结果都是1说明声明式函数会被提前声明和定义,且在执行过程中可重新赋值

js基础——函数的更多相关文章

  1. JS基础——函数的创建和使用

    在JS中函数在使用时实质上和我们平时学习的编程语言中的函数类似,它相同也具有函数名,參数,返回值,函数体等这些寻常函数所具有的内容.可是作为一种脚本语言,它确实也有自己不一样的地方. 一.创建 < ...

  2. JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象

       前   言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学, ...

  3. JavaScript基础一(js基础函数与运算符)

    [使用js的三种方式] 1.在HTML标签中,直接内嵌js(并不提倡使用) <button onclick=" alert('点就点')"> 点我啊</butto ...

  4. js基础 -函数

    函数 定义 var a =function (){...}; 匿名函数方式定义function a(){} 直接定义 函数的参数arguments 可以接收任意个参数,是个像数组的内容,可for in ...

  5. js基础-函数基础

    js 先对函数进行解析 然后在执行函数 定义一个函数 实现求两个数的乘 function mult(a,b){ return a*b; } mult(1,3) 计算1 - n 的和 封装成函数 fun ...

  6. js基础-函数-var和let的区别

    javaScript简介 javaScript历史 1995年,Netscape公司是凭借Navigator浏览器成为当时第一代互联网公司. 网景公司希望在HTML界面上加一点动态效果,于是叫Bren ...

  7. JS基础函数

    函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块 <script> function demo(){ var a = 10; var b = 25; var sum = a + ...

  8. js 基础 函数传值

    让我忽略的函数传值问题 function box(num){ num += 10;  // num(有色的num) 实际就是arguments[0] ,如果参数没有num,则函数体的num(有色的nu ...

  9. JS基础-全方面掌握继承

    前言 上篇文章详细解析了原型.原型链的相关知识点,这篇文章讲的是和原型链有密切关联的继承,它是前端基础中很重要的一个知识点,它对于代码复用来说非常有用,本篇将详细解析JS中的各种继承方式和优缺点进行, ...

随机推荐

  1. Leetcode836.Rectangle Overlap矩阵重叠

    矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标. 如果相交的面积为正,则称两矩形重叠.需要明确的是,只在角或边接触的 ...

  2. 10分钟学会Python

    #1. 语法 Python中没有强制的语句终止字符,代码块是通过缩进来指示的.缩进表示一个代码块的开始,逆缩进则表示一个代码块的结束.一般用4个空格来表示缩进. 声明以冒号(:)字符结束,并且开启一个 ...

  3. PPT转PDF

    需求:可以上传ppt,前台可以预览. 在用程序将ppt转pdf的过程中,遇到几个问题,记录如下: 1.检索 COM 类工厂中 CLSID 为 {91493441-5A91-11CF-8700-00AA ...

  4. blogbeta1

    //html <!DOCTYPE html> blog 身高:170 体重:230 座右铭 再给我吃一口 关于我 微信 微博 标签 SM SP 重金求爹 2019/11/16 本人找爹,带 ...

  5. NS2学习笔记

    这两天在调一个仿真程序,比较奇怪的错误,就是一个节点广播消息,在它通信半径内的节点收不到消息,一直在通信上找问题,找了半天也没找到. 最后,用gdb调试,发现在一个操作指针处发生了段错误,引起的原因时 ...

  6. Vue组件跨层级通信

    正常组件间通信 父->子组件 是通过属性传递 子->父组件 是通过this.$emit()传递 this.$emit()返回的是this,如果需要一些值 可使用callback方式传递 p ...

  7. SGU 107 987654321 problem【找规律】

    题目链接: http://acm.sgu.ru/problem.php?contest=0&problem=107 题意: 平方后几位为987654321的n位数有多少个 分析: 虽然说是水题 ...

  8. Java练习 SDUT-1217_蟠桃记

    蟠桃记 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 孙悟空在大闹蟠桃园的时候,第一天吃掉了所有桃子总数一半多一个,第 ...

  9. @atcoder - AGC034D@ Manhattan Max Matching

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 考虑一个二维平面,执行共 2*N 次操作: 前 N 次,第 i ...

  10. laravel setxxAttribute和getxxAttribute的使用

    setxxAttribute 在设置(sql: insert update) 的时候 会将$obj->xx = 'value'的时候, 操作数据库之前 自动转化一下 getxxAttribute ...