您好,登錄后才能下訂單哦!
本篇內容介紹了“JavaScript函數(shù)調用經(jīng)典實例有哪些”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
1.輸入框判斷是不是閏年
2.隨機數(shù)判斷是不是閏年
3.輸入框判斷是不是質數(shù)
4.隨機數(shù)判斷是不是質數(shù)
5.封裝函數(shù),判斷日期是否合法
思考:首先我們采用函數(shù)調用的方法,將需要調用的函數(shù)都寫在 js 文件夾里面,調用的時候會更方便。需要注意的是不要忘記在html中引入js.
html代碼:
<body> <span>是否為閏年</span> <input type="text" id='inp1'> <br> <span>是否為質數(shù)</span> <input type="text" id="inp2"> <br> <!-- 外部引入js 文件 --> <script src="../js/tools_practice.js"></script> <script> //調用獲取對象函數(shù) var oInp1 = get('inp1'); //判斷是否為閏年 var year = leap_year(2004) ; //賦值給輸入框 if(year){ oInp1.value = '是閏年' ; } else{ oInp1.value = '不是閏年' ; } //調用隨機數(shù)生成一個年份判斷是否為閏年 var y = rand(1000 , 2000) ; var res = leap_year(y) ; if(res){ document.write('隨機數(shù)' + y + '是閏年' +' ') ; } else{ document.write('隨機數(shù)' + y + '不是閏年' + ' ') ; } //調用函數(shù)拿到相關對象 var oInp2 = get('inp2') ; //輸入框判斷是否為質數(shù) var n = isZhi(14) ; //賦值給判斷質數(shù)輸入框 if(n){ oInp2.value = '是質數(shù)' } else{ oInp2.value = '不是質數(shù)' } //調用隨機數(shù)生成一個數(shù)字判斷是否為質數(shù) var num = rand(0,1000) ; var res3 = isZhi(num) ; if(res3){ document.write('隨機數(shù)' + num + '是質數(shù)' +' ') ; } else{ document.write('隨機數(shù)' + num + '不是質數(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; } //獲取對象 function get(id) { return document.getElementById(id); } //功能:產(chǎn)生某個范圍內的隨機整數(shù) //參數(shù): // min number 范圍最小值 // max number 范圍最大值 //返回值: // number function rand(min, max) { return Math.round(Math.random() * (max - min) + min); } //功能:判斷一個數(shù)是否為質數(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ù)調用的四種方法:方法調用模式,函數(shù)調用模式,構造器調用模式,apply,call調用模式
1.方法調用模式:
先定義一個對象,然后在對象的屬性中定義方法,通過myobject.property來執(zhí)行方法,this即指當前的myobject 對象。
var blogInfo={ blogId:123, blogName:"werwr", showBlog:function(){alert(this.blogId);} }; blogInfo.showBlog();
2.函數(shù)調用模式
定義一個函數(shù),設置一個變量名保存函數(shù),這時this指向到window對象。
var myfunc = function(a,b){ return a+b; } alert(myfunc(3,4));
3.構造器調用模式
定義一個函數(shù)對象,在對象中定義屬性,在其原型對象中定義方法。在使用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);
“JavaScript函數(shù)調用經(jīng)典實例有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注億速云網(wǎng)站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。