zoukankan      html  css  js  c++  java
  • js函数重载

    其它面向对象的语言(比如Java)的一种共有的特性是“重载”函数的能力:传给它们不同数目或类型的参数,函数将执行不同操作。虽然这种能力在JavaScript 中不是直接可用的,一些工具的提供使得这种探求完全成为可能。
      在JavaScript的每一个函数里存在一个上下文相关的名为arguments的变量,它的行为类似于一个伪数组,包含了传给函数的所有参数。参数不是一真正的数组(意味着你不能修改它,或者调用push()方法增加新的项),但是你可以以数组的形式访问它,而且它也的确有一个length属性。
    示例
     1 //一个简单的用来发送消息的函数
     2 function sendMessage( msg, obj ) {
     3 //如果同时提供了一个消息和一个对象
     4 if ( arguments.length == 2 )
     5 //就将消息发给该对象
     6 obj.handleMsg( msg );
     7 //否则,刚假定只有消息被提供
     8 else
     9 //于是显示该消息
    10 alert( msg );
    11 }
    12 //调用函数,带一个参数– 用警告框显示消息
    13 sendMessage( "Hello, World!" );
    14 //或者,我们也可以传入我们自己的对象用
    15 //一种不同方式来显示信息
    16 sendMessage( "How are you?", {
    17 handleMsg: function( msg ) {
    18 alert( "This is a custom message: " + msg );
    19 }
    20 });
    21 //一个使用任意数目参数创建一个数组的函数
    22 function makeArray() {
    23 //临时数组
    24 var arr = [];
    25 //遍历提交的每一个参数
    26 for ( var i = 0; i < arguments.length; i++ ) {
    27 arr.push( arguments[i] );
    28 }
    29 //返回结果数组插入代码
    30 return arr;
    31 }


  • 相关阅读:
    【使用intellij idea14创建多Module工程---马房山网 www.mafangshan.com】
    【Zookeeper可以干什么】
    【Zookeeper是什么】
    【win10 intelij terminal 无法输入命令】
    【Information:java: javacTask: 源发行版 1.7 需要目标发行版 1.7】
    【如何用Maven创建web项目】
    【JS关键字】
    【在网页中添加滚动文字】
    【idea自动生成serialVersionUID】
    线段树扫描线求矩形面积交
  • 原文地址:https://www.cnblogs.com/hdzsyp/p/1862911.html
Copyright © 2011-2022 走看看