JavaScript的“默认参数”的实现

来源:互联网 发布:甘肃广电网络客服电话 编辑:程序博客网 时间:2024/06/03 13:57

今天写着JavaScript的时候,想实现一个功能,就是写一个函数,让div这个容器的高度始终是浏览器可是范围高度的一半,不管用户是否改变了浏览器的大小。

但是,JS不支持像C++和java之类的默认参数函数,怎么办呢?

我想了下,一个idea来了,利用函数的arguments数组,代码如下

function setBodyHeight(percent){var percent = arguments[0]?arguments[0]:0.5;var fullHeight = document.documentElement.clientHeight;var height = percent * fullHeight;var gameBody = document.getElementById('gameBody');gameBody.style.height = height.toString()+ 'px';}window.onload = function(){setBodyHeight();  //注意没有传入任何参数}

主要的思想:代码中的那条红色代码是关键,我们知道,在js中,可以用arguments数组来顺序访问传入的参数,那么如果用户如果没有传入参数,arguments[0]就是未定义的,我们就可以用这条红色代码来判断用户是否传了参数,如果没有传参,就启用我们设定好的默认值,以此来实现“默认参数”的功能,不得不说arguments数组只要玩得转,就可以实现很多的事情。

0 0
原创粉丝点击