JavaScript函數(shù)調(diào)用經(jīng)典實(shí)例代碼
JavaScript函數(shù)調(diào)用經(jīng)典例題
1.輸入框判斷是不是閏年
2.隨機(jī)數(shù)判斷是不是閏年
3.輸入框判斷是不是質(zhì)數(shù)
4.隨機(jī)數(shù)判斷是不是質(zhì)數(shù)
5.封裝函數(shù),判斷日期是否合法
思考:首先我們采用函數(shù)調(diào)用的方法,將需要調(diào)用的函數(shù)都寫在 js 文件夾里面,調(diào)用的時(shí)候會(huì)更方便。需要注意的是不要忘記在html中引入js.
html代碼:
<body> <span>是否為閏年</span> <input type="text" id='inp1'> <br> <span>是否為質(zhì)數(shù)</span> <input type="text" id="inp2"> <br> <!-- 外部引入js 文件 --> <script src="../js/tools_practice.js"></script> <script> //調(diào)用獲取對(duì)象函數(shù) var oInp1 = get('inp1'); //判斷是否為閏年 var year = leap_year(2004) ; //賦值給輸入框 if(year){ oInp1.value = '是閏年' ; } else{ oInp1.value = '不是閏年' ; } //調(diào)用隨機(jī)數(shù)生成一個(gè)年份判斷是否為閏年 var y = rand(1000 , 2000) ; var res = leap_year(y) ; if(res){ document.write('隨機(jī)數(shù)' + y + '是閏年' +' ') ; } else{ document.write('隨機(jī)數(shù)' + y + '不是閏年' + ' ') ; } //調(diào)用函數(shù)拿到相關(guān)對(duì)象 var oInp2 = get('inp2') ; //輸入框判斷是否為質(zhì)數(shù) var n = isZhi(14) ; //賦值給判斷質(zhì)數(shù)輸入框 if(n){ oInp2.value = '是質(zhì)數(shù)' } else{ oInp2.value = '不是質(zhì)數(shù)' } //調(diào)用隨機(jī)數(shù)生成一個(gè)數(shù)字判斷是否為質(zhì)數(shù) var num = rand(0,1000) ; var res3 = isZhi(num) ; if(res3){ document.write('隨機(jī)數(shù)' + num + '是質(zhì)數(shù)' +' ') ; } else{ document.write('隨機(jī)數(shù)' + num + '不是質(zhì)數(shù)' +' ') ; } //封裝函數(shù),判斷日期是否合法 var da = data(1233,1,32) ; if(da){ document.write('日期合法' +' ') ; } else{ document.write('日期不合法' +' ') ; } </script> </body>
js代碼:
//功能:判斷某年是否為閏年
//參數(shù):
// number
//返回值:
// boolean
function leap_year(x) {
if (x % 4 === 0 && x % 100 !== 0 || x % 400 === 0) {
return true;
}
return false;
}
//獲取對(duì)象
function get(id) {
return document.getElementById(id);
}
//功能:產(chǎn)生某個(gè)范圍內(nèi)的隨機(jī)整數(shù)
//參數(shù):
// min number 范圍最小值
// max number 范圍最大值
//返回值:
// number
function rand(min, max) {
return Math.round(Math.random() * (max - min) + min);
}
//功能:判斷一個(gè)數(shù)是否為質(zhì)數(shù)
//參數(shù) :
// number
//返回值:
// boolean
function isZhi(n) {
for (var i = 2; i < n; i++) {
if (n % i === 0) {
return false;
}
}
return true;
}
//功能:判斷日期是否合法
//參數(shù):
// 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函數(shù)的定義與調(diào)用方法
JS函數(shù)調(diào)用的四種方法:方法調(diào)用模式,函數(shù)調(diào)用模式,構(gòu)造器調(diào)用模式,apply,call調(diào)用模式
1.方法調(diào)用模式:
先定義一個(gè)對(duì)象,然后在對(duì)象的屬性中定義方法,通過myobject.property來(lái)執(zhí)行方法,this即指當(dāng)前的myobject?對(duì)象。
var blogInfo={ blogId:123, blogName:"werwr", showBlog:function(){alert(this.blogId);} }; blogInfo.showBlog();
2.函數(shù)調(diào)用模式
定義一個(gè)函數(shù),設(shè)置一個(gè)變量名保存函數(shù),這時(shí)this指向到window對(duì)象。
var myfunc = function(a,b){ return a+b; } alert(myfunc(3,4));
3.構(gòu)造器調(diào)用模式
定義一個(gè)函數(shù)對(duì)象,在對(duì)象中定義屬性,在其原型對(duì)象中定義方法。在使用prototype的方法時(shí),必須實(shí)例化該對(duì)象才能調(diào)用其方法。
var myfunc = function(a){ this.a = a; }; myfunc.prototype = { show:function(){alert(this.a);} } var newfunc = new myfunc("123123123"); newfunc.show();
4.apply,call調(diào)用模式
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);
總結(jié)
到此這篇關(guān)于JavaScript函數(shù)調(diào)用的文章就介紹到這了,更多相關(guān)JavaScript函數(shù)調(diào)用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用遞增的數(shù)字返回循環(huán)漸變的顏色的js代碼
其實(shí)很久前就想寫一個(gè)這樣的函數(shù)了。因?yàn)楹芏鄷r(shí)候需要利用遞增數(shù)字返回一個(gè)漸變顏色序列,今天終于完成了。2008-10-10Javascript中call,apply,bind方法的詳解與總結(jié)
本文主要Javascript中call,apply,bind方法的進(jìn)行全面分析,并在文章結(jié)尾對(duì)call,apply,bind方法的聯(lián)系和區(qū)別做了總結(jié),具有很好的參考價(jià)值,需要的朋友一起來(lái)看下吧2016-12-12自己封裝的一個(gè)簡(jiǎn)單的倒計(jì)時(shí)功能實(shí)例
下面小編就為大家?guī)?lái)一篇自己封裝的一個(gè)簡(jiǎn)單的倒計(jì)時(shí)功能實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2016-11-11jquery實(shí)現(xiàn)動(dòng)靜態(tài)條形統(tǒng)計(jì)圖
這篇文章主要介紹了jquery實(shí)現(xiàn)動(dòng)靜態(tài)條形統(tǒng)計(jì)圖,需要的朋友可以參考下2015-08-08JS中不應(yīng)該使用箭頭函數(shù)的四種情況詳解
箭頭函數(shù)給我們的工作帶來(lái)了極大的方便,但是它們有什么缺點(diǎn)呢?我們應(yīng)該一直使用箭頭函數(shù)嗎?我們應(yīng)該在哪些場(chǎng)景中停止使用箭頭函數(shù)?本文就來(lái)為大家詳細(xì)講講2022-07-07微信小程序獲取位置展示地圖并標(biāo)注信息的實(shí)例代碼
這篇文章主要介紹了微信小程序獲取位置展示地圖并標(biāo)注信息的實(shí)例代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09javascript中setAttribute()函數(shù)使用方法及兼容性
這篇文章主要介紹了javascript中setAttribute()函數(shù)使用方法及兼容性的相關(guān)資料,需要的朋友可以參考下2015-07-07