模拟重载

本文通过一个具体的示例介绍了如何在JavaScript中通过检查函数调用时传入的参数数量来模拟函数重载的行为。尽管JavaScript不直接支持函数重载,但可以通过条件判断实现类似的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<span style="font-size:14px;"><script>
		/*function checkout(money){//执行现金结账
			console.log("收款");
			console.log("找零");
		}
		function checkout(cardID,pwd){//刷卡
			console.log("刷卡");
			console.log("输密码");
			console.log("签字");
		}
		function checkout(){//支付宝
			console.log("扫描二维码");
		}
		checkout();
		checkout(100);//自动调用一个参数的函数
		checkout("1234 1234 ","123456");//自动调用2个参数的函数
*/
		/*var checkout = function (money){//执行现金结账
			console.log("收款");
			console.log("找零");
		}
		var checkout=function(cardID,pwd){//刷卡
			console.log("刷卡");
			console.log("输密码");
			console.log("签字");
		}
		var checkout=function (){//支付宝
			console.log("扫描二维码");
		}
		checkout();
		checkout(100);//自动调用一个参数的函数
		checkout("1234 1234 ","123456");//输出了3次扫描二维码,覆盖了。
		//所以js语法不支持重载,不允许多个同名函数同时存在
		//如果同时存在,最后定义的函数会覆盖之前所有的同名函数*/

		function checkout(money){
			//如果arguments?
			//执行现金结账
			if(arguments.length==1){
				console.log("收款-找零");
			}else if(arguments.length==2){
				//否则,如果arguments?
				console.log("刷卡--输密码--签字");
			}else if(arguments.length==0){
				//否则,
				console.log("扫描二维码");
			}
			checkout();
			checkout(100);//自动调用一个参数的函数
			checkout("1234 1234 ","123456");
		}
	</script></span>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值