JS——函数形参匹配与return语句

这是类别《小知识点》的第一篇,特此说明,此类别记录一些计算机、编程语言等相关的杂散知识点,有的是笔试时遇到的题目,虽然不一定有参考价值(因为有的题目完全是为了笔试而设,谁会写一些开发中根本不符规范,可读性很差的函数或是类呢?),但多少是有点帮助的。


一、JS 函数形参

1、JS形参不能赋初值,且默认类型与值为undefined

php、c/c++、java中函数形参可赋初值,从而可省略该形参调用函数,但JS 中不能赋初值,省略该形参调用函数时,省略的形参默认为undefined类型。

<script>
function test(var1,var2){
	alert("var1与var2类型分别为:"+typeof var1+typeof var2+" var1+var2的类型为:"+typeof (var1+var2)+" var1+var2值为:"+(var1+var2));
}
test(1,2);
alert("只提供第一个参数(string类型)时");
test("a");
alert("只提供第一个参数(number类型)时");
test(1);
</script>
执行上面脚本可得出 结论:

——>形参的类型在函数调用时才确定,默认为undefined类型(只有一个值undefined);

——>类型的等级为:undefined<int<string。即等级类型与高等级类型相加,整体类型为较高类型。如:

var i=1;
var u;
//则i+u类型为number,值为NaN
var s="string";
//则s+u类型为string,值为stringundefined


二、return语句

1、JS 函数没有使用return语句时(或返回空时),函数返回类型为undefined,使用return语句时,返回类型由返回值决定。

function test1(varValue){}
function test2(varValue){
	return varValue;
}
var t1=test1(1);//t1类型为undefined
var t2=test2(1);//t2类型为number
var t3=test2("1");//t3类型为string









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值