zoukankan      html  css  js  c++  java
  • Js 不支持函数的重载

    Js 不支持函数的重载,可以用相同的名字在同一作用区域,定义两个函数,而不会引起错误,但真正使用的是最后一个。

    Js 不会验证传递给函数的参数个数是否和函数定义的参数的个数相同,开发人员定义的函数都可以接受任意个数的参数(根据NetScript 文档,最多能接受25个) ,而不会引发错误,任何遗漏的参数都会用undefined 代替,多余的参数被将忽略。

     

    案例:

    var calc=function(n){

               alert(n*n);

    }

    //如果传入两个参数,就算加法

    var calc=function(n,m){

                alert(n+m);

    }

    console.log(calc(13));  //正常单独输出应为:169,但并在一起后输出为:NaN(13+undefined的结果显示NaN)

    console.log(calc(12,13));   //正常输出为:25

    这个给被重新定义为两个参数的加法,必须传入两个参数才行,传入一个的话就会输出NAN

     

    var calc=function(n,m){

               alert(n+m);

    }

    var calc=function(n){

               alert(n*n);

    }

    console.log(calc(13));  //输出为:169

    console.log(calc(12,13));   //输出为:144

    函数被重新定义为一个数的平方,只需要一个参数,会忽略其他多余参数

     

  • 相关阅读:
    LCA模板
    bzoj1660:[Usaco2006 Nov]badhair乱头发节
    不老的传说
    田忌赛马
    最短路径问题
    hdu2421-Deciphering Password-(欧拉筛+唯一分解定理+积性函数+立方求和公式)
    hdu1215-七夕节-(埃氏筛+唯一分解定理)
    迷宫-(bfs)
    区间或和-(位运算)
    海啸-(矩阵前缀和)
  • 原文地址:https://www.cnblogs.com/ranyonsue/p/5872814.html
Copyright © 2011-2022 走看看