JavaScript函數(shù)調(diào)用經(jīng)典實例代碼
JavaScript函數(shù)調(diào)用經(jīng)典例題
1.輸入框判斷是不是閏年
2.隨機數(shù)判斷是不是閏年
3.輸入框判斷是不是質(zhì)數(shù)
4.隨機數(shù)判斷是不是質(zhì)數(shù)
5.封裝函數(shù),判斷日期是否合法
思考:首先我們采用函數(shù)調(diào)用的方法,將需要調(diào)用的函數(shù)都寫在 js 文件夾里面,調(diào)用的時候會更方便。需要注意的是不要忘記在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)用獲取對象函數(shù)
var oInp1 = get('inp1');
//判斷是否為閏年
var year = leap_year(2004) ;
//賦值給輸入框
if(year){
oInp1.value = '是閏年' ;
}
else{
oInp1.value = '不是閏年' ;
}
//調(diào)用隨機數(shù)生成一個年份判斷是否為閏年
var y = rand(1000 , 2000) ;
var res = leap_year(y) ;
if(res){
document.write('隨機數(shù)' + y + '是閏年' +' ') ;
}
else{
document.write('隨機數(shù)' + y + '不是閏年' + ' ') ;
}
//調(diào)用函數(shù)拿到相關對象
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)用隨機數(shù)生成一個數(shù)字判斷是否為質(zhì)數(shù)
var num = rand(0,1000) ;
var res3 = isZhi(num) ;
if(res3){
document.write('隨機數(shù)' + num + '是質(zhì)數(shù)' +' ') ;
}
else{
document.write('隨機數(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;
}
//獲取對象
function get(id) {
return document.getElementById(id);
}
//功能:產(chǎn)生某個范圍內(nèi)的隨機整數(shù)
//參數(shù):
// min number 范圍最小值
// max number 范圍最大值
//返回值:
// number
function rand(min, max) {
return Math.round(Math.random() * (max - min) + min);
}
//功能:判斷一個數(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)用模式:
先定義一個對象,然后在對象的屬性中定義方法,通過myobject.property來執(zhí)行方法,this即指當前的myobject?對象。
var blogInfo={
blogId:123,
blogName:"werwr",
showBlog:function(){alert(this.blogId);}
};
blogInfo.showBlog();
2.函數(shù)調(diào)用模式
定義一個函數(shù),設置一個變量名保存函數(shù),這時this指向到window對象。
var myfunc = function(a,b){
return a+b;
}
alert(myfunc(3,4));
3.構(gòu)造器調(diào)用模式
定義一個函數(shù)對象,在對象中定義屬性,在其原型對象中定義方法。在使用prototype的方法時,必須實例化該對象才能調(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é)
到此這篇關于JavaScript函數(shù)調(diào)用的文章就介紹到這了,更多相關JavaScript函數(shù)調(diào)用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
比較詳細的關于javascript中void(0)的具體含義解釋
比較詳細的關于javascript中void(0)的具體含義解釋...2007-08-08
JS實現(xiàn)兩個大數(shù)(整數(shù))相乘
大數(shù),即超出語言所能表示的數(shù)字最大范圍的數(shù)字,那么如何實現(xiàn)兩個大數(shù)相乘呢?下面有個不錯的方法,大家可以參考下2014-04-04
javascript消除window.close()的提示窗口
有人問起,怎么去掉js調(diào)用window.close()時怎么去掉那可惡的提示,咋一看好像還真不好弄,IE的安全機制好像就不允許通過腳本關閉本頁面,但是IE好像可以允許js關閉彈出窗口,那我們是不是可以通過一定的技巧欺騙一下IE,繞過去呢。鼓搗了幾下,似乎還真可以做到2015-05-05
微信小程序視圖容器(swiper)組件創(chuàng)建輪播圖
這篇文章主要為大家詳細介紹了微信小程序視圖容器(swiper)組件創(chuàng)建輪播圖,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08
axios/fetch實現(xiàn)stream流式請求示例詳解
這篇文章主要為大家介紹了axios/fetch實現(xiàn)stream流式請求示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-09-09

