JavaScript函数调用
小高今天早睡了吗? 人气:0JavaScript函数调用经典例题
1.输入框判断是不是闰年
2.随机数判断是不是闰年
3.输入框判断是不是质数
4.随机数判断是不是质数
5.封装函数,判断日期是否合法
思考:首先我们采用函数调用的方法,将需要调用的函数都写在 js 文件夹里面,调用的时候会更方便。需要注意的是不要忘记在html中引入js.
html代码:
<body> <span>是否为闰年</span> <input type="text" id='inp1'> <br> <span>是否为质数</span> <input type="text" id="inp2"> <br> <!-- 外部引入js 文件 --> <script src="../js/tools_practice.js"></script> <script> //调用获取对象函数 var oInp1 = get('inp1'); //判断是否为闰年 var year = leap_year(2004) ; //赋值给输入框 if(year){ oInp1.value = '是闰年' ; } else{ oInp1.value = '不是闰年' ; } //调用随机数生成一个年份判断是否为闰年 var y = rand(1000 , 2000) ; var res = leap_year(y) ; if(res){ document.write('随机数' + y + '是闰年' +' ') ; } else{ document.write('随机数' + y + '不是闰年' + ' ') ; } //调用函数拿到相关对象 var oInp2 = get('inp2') ; //输入框判断是否为质数 var n = isZhi(14) ; //赋值给判断质数输入框 if(n){ oInp2.value = '是质数' } else{ oInp2.value = '不是质数' } //调用随机数生成一个数字判断是否为质数 var num = rand(0,1000) ; var res3 = isZhi(num) ; if(res3){ document.write('随机数' + num + '是质数' +' ') ; } else{ document.write('随机数' + num + '不是质数' +' ') ; } //封装函数,判断日期是否合法 var da = data(1233,1,32) ; if(da){ document.write('日期合法' +' ') ; } else{ document.write('日期不合法' +' ') ; } </script> </body>
js代码:
//功能:判断某年是否为闰年
//参数:
// number
//返回值:
// boolean
function leap_year(x) {
if (x % 4 === 0 && x % 100 !== 0 || x % 400 === 0) {
return true;
}
return false;
}
//获取对象
function get(id) {
return document.getElementById(id);
}
//功能:产生某个范围内的随机整数
//参数:
// min number 范围最小值
// max number 范围最大值
//返回值:
// number
function rand(min, max) {
return Math.round(Math.random() * (max - min) + min);
}
//功能:判断一个数是否为质数
//参数 :
// number
//返回值:
// boolean
function isZhi(n) {
for (var i = 2; i < n; i++) {
if (n % i === 0) {
return false;
}
}
return true;
}
//功能:判断日期是否合法
//参数:
// y number 年份
// m number 月份
// d number 日期
//返回值:
// boolean
function data(y, m, d) {
//先判断年 --> 在判断月 --> 在判断日期
//判断年 :
if (y >= 1000 && y <= 2000 && y % 1 === 0) {
//判断月
if (m >= 1 && m <= 12 && m % 1 === 0) {
var maxDay ;
if (m === 1 || m === 3 || m === 5 || m === 7 || m === 8 || m === 10 || m === 12) {
maxDay = 31;
}
else if (m === 4 || m === 6 || m === 9 || m === 11) {
maxDay = 30;
}
else if (m === 2) {
if (y % 4 === 0 && y % 100 != 0 || y % 400 === 0) {
maxDay = 29;
}
else {
maxDay = 28;
}
}
//判断日期
if(d >= 1 && d <= maxDay && d % 1 === 0){
return true ;
}
}
}
return false ;
}
JS函数的定义与调用方法
JS函数调用的四种方法:方法调用模式,函数调用模式,构造器调用模式,apply,call调用模式
1.方法调用模式:
先定义一个对象,然后在对象的属性中定义方法,通过myobject.property来执行方法,this即指当前的myobject 对象。
var blogInfo={ blogId:123, blogName:"werwr", showBlog:function(){alert(this.blogId);} }; blogInfo.showBlog();
2.函数调用模式
定义一个函数,设置一个变量名保存函数,这时this指向到window对象。
var myfunc = function(a,b){ return a+b; } alert(myfunc(3,4));
3.构造器调用模式
定义一个函数对象,在对象中定义属性,在其原型对象中定义方法。在使用prototype的方法时,必须实例化该对象才能调用其方法。
var myfunc = function(a){ this.a = a; }; myfunc.prototype = { show:function(){alert(this.a);} } var newfunc = new myfunc("123123123"); newfunc.show();
4.apply,call调用模式
var myobject={}; var sum = function(a,b){ return a+b; }; var sum2 = sum.call(myobject,10,30); //var sum2 = sum.apply(myobject,[10,30]); alert(sum2);
总结
加载全部内容