日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

JavaScript函數(shù)聲明和調(diào)用、有參函數(shù)和無(wú)參函數(shù)、返回值

 nxhujiee 2018-04-10

JavaScript函數(shù)聲明和調(diào)用、有參函數(shù)和無(wú)參函數(shù)、返回值

原創(chuàng) 2016年10月13日 19:10:28

<前言!>JavaScript變量的聲明     <變量是存儲(chǔ)數(shù)據(jù)的容器>

js中變量的聲明方式有兩種  

var 是聲明變量的關(guān)鍵字 <下面是有關(guān)鍵字和無(wú)關(guān)鍵字的區(qū)別>

1、顯式聲明 

[html] view plain copy
  1. <span style="font-size:18px;">var nSom=886;</span>  

2、隱式聲明

[html] view plain copy
  1. <span style="font-size:18px;">nSom=884;</span>  
變量聲明通常我使用匈牙利命名法:類型前綴+首字母大寫 簡(jiǎn)單易懂      <詳細(xì)變量聲明請(qǐng)看博文:javaScript數(shù)據(jù)類型、變量命名規(guī)范>

s:表示字符串.n:表示數(shù)字.b:表示邏輯. a:表示數(shù)組.r:表示正則表達(dá)式.f:表示函數(shù) .o:表示對(duì)象 .g:表示全局變量.


1、JavaScript的函數(shù)聲明   <個(gè)人理解:函數(shù)是由事件驅(qū)動(dòng)的或當(dāng)函數(shù)調(diào)用時(shí)執(zhí)行的可重復(fù)利用的代碼塊>

函數(shù)的聲明一

[html] view plain copy
  1. function css(obj, name, value){  
  2.     if(arguments.length==2) //獲取  
  3.     {  
  4.         return obj.style[name];  
  5.     }  
  6.     else  
  7.     {  
  8.         obj.style[name]=value;  
  9.     }  
  10. }  

這樣的方法聲明一個(gè)函數(shù)  而第二種方法更像是表達(dá)式一樣聲明一個(gè)函數(shù)

函數(shù)的聲明二

[html] view plain copy
  1. var css=function(obj, name, value){  
  2.     if(arguments.length==2) //獲取  
  3.     {  
  4.         return obj.style[name];  
  5.     }  
  6.     else  
  7.     {  
  8.         obj.style[name]=value;  
  9.     }  
  10. }  
兩種函數(shù)聲明辦法的差別 JavaScript的編譯器對(duì)函數(shù)聲明與函數(shù)表達(dá)式并不是統(tǒng)一對(duì)待的, 對(duì)于第一種方法明顯是會(huì)優(yōu)先編譯. 確保函數(shù)在調(diào)用之前已經(jīng)被全部解析了,而第二種類似函數(shù)表達(dá)式的聲明函數(shù)的方法,只有當(dāng)函數(shù)中的代碼塊被調(diào)用才會(huì)進(jìn)行解析<每次調(diào)用都需要編譯解析>,so在通常的使用中,我們是用第一種函數(shù)的聲明多一點(diǎn)<如果以函數(shù)聲明的形式去定義這兩種定義的函數(shù)時(shí),第二種會(huì)報(bào)錯(cuò),原因是第二種寫法不支持將調(diào)用語(yǔ)句寫在函數(shù)聲明之前>.

2、JavaScript函數(shù)的調(diào)用   <聲明了就要調(diào)用才會(huì)執(zhí)行,通俗一點(diǎn)就是聲明了不調(diào)用,那你聲明干啥?>

代碼如下:

[html] view plain copy
  1. <script type="text/javascript">   
  2.   function sum(a,b) { //函數(shù)聲明辦法一  
  3.     return a+b;       //返回  
  4.   }   
  5.    alert(sum(8,6));//函數(shù)的調(diào)用  
  6. t;span style="white-space:pre">  </span></script>  

這是簡(jiǎn)單的函數(shù)聲明后調(diào)用,聲明函數(shù)后 只有當(dāng)調(diào)用了才會(huì)執(zhí)行,不然就會(huì)和無(wú)用的代碼塊一樣.<除非加入自執(zhí)行符號(hào)!>

3、JavaScript有參函數(shù)與無(wú)參函數(shù)  <前言:參數(shù)用于將數(shù)據(jù)傳遞到函數(shù)內(nèi)部,有了參數(shù)之后函數(shù)能進(jìn)行封裝,更好的進(jìn)行二次使用.>

個(gè)人理解歡迎指正:無(wú)參函數(shù):是針對(duì)某個(gè)局部變量 只能一次使用,而不進(jìn)行封裝的函數(shù), 通常只執(zhí)行一次

 有參函數(shù):利于封裝,能多次使用,很方便,所以<能夠整理出有參函數(shù)的辦法時(shí)盡量整理,達(dá)到多次循環(huán)使用>

下面是代碼:

[html] view plain copy
  1. function aa(b,c){//<函數(shù)的聲明aa> 當(dāng)aa(b,c)是有參函數(shù)  當(dāng)aa()是無(wú)函數(shù)   b,c是形參   
  2.     alert(b+c);  //b帶進(jìn)去,是形參  
  3. }  
  4. window.onload=function (){  
  5.     aa('4','8')  // 實(shí)參/常量  實(shí)參傳給形參 <函數(shù)的調(diào)用>//aa('4','8')里面的叫做實(shí)參,真實(shí)的數(shù)值,常量。  
  6. };  
  7. //函數(shù)的傳參:實(shí)參給形參的過程  
在例子中我們聲明了有參函數(shù)aa 當(dāng)有參函數(shù)aa后面的()括號(hào)里沒有參數(shù)的時(shí)候,那時(shí)aa就是無(wú)參函數(shù), 代碼中的b和c作為一個(gè)形參整理一下:函數(shù)首部的小括號(hào)沒有參數(shù)就是無(wú)參函數(shù),參數(shù)的作用是可以代替多次調(diào)用函數(shù)時(shí),函數(shù)中部分需要改變的值. 參數(shù)分為實(shí)參和形參.

下面說一下什么是形參什么是實(shí)參

1、形參 解析:全稱"形式參數(shù)",用于定義方法的時(shí)候使用的參數(shù),目的用來(lái)接收調(diào)用該方法時(shí)傳遞的參數(shù)當(dāng)只有在被調(diào)用時(shí)才會(huì)分配內(nèi)存單元,在調(diào)用結(jié)束,即刻釋放所分配的內(nèi)存單元因此,只在方法內(nèi)才有效<通常我們使用在函數(shù)中多一丟丟>

2、實(shí)參 解析:全稱"實(shí)際參數(shù)",用于調(diào)用時(shí)傳遞給方法的參數(shù),即傳遞給被調(diào)用方法的值,預(yù)先創(chuàng)建并賦予確定值,也可將實(shí)參看做常量

3、實(shí)參傳遞給形參的傳值調(diào)用傳值調(diào)用中,傳遞的參數(shù)類型是為常用的基本數(shù)據(jù)類型,參數(shù)視為形參,這里形參是可看做是未賦值的局部變量.

4、引用調(diào)用:引用調(diào)用中,在Java中,傳遞的參數(shù)類型是為引用數(shù)據(jù)類型,參數(shù)視為實(shí)參。在調(diào)用機(jī)制里,將實(shí)參的地址傳遞給了形參,形參上的改變實(shí)際上都發(fā)生在實(shí)參上,可以視為全局變量。

好,我們繼續(xù)

下面是一段實(shí)參傳參給形參的例子

[html] view plain copy
  1. <!DOCTYPE html>  
  2. <html>  
  3.     <head>  
  4.         <meta charset="UTF-8">  
  5.         <title>傳參</title>  
  6.         <style type="text/css">  
  7.             body{padding: 50px;}  
  8.             .box{width: 200px;height: 200px;background: red;}  
  9.         </style>  
  10.         <script type="text/javascript">  
  11. <span style="white-space:pre">            </span>//函數(shù)的傳參:實(shí)參給形參的過程  
  12.             //傳參的例子  
  13.             function bianda(wd,w400){ //形參  
  14.                 var ob=document.getElementById('one');  
  15.                 ob.style[wd]=w400;  
  16.                 ob.style.height='400px';  
  17.                 ob.style.backgroundColor='green';  
  18.             }  
  19.             function bianx(wd,w200){ //形參  
  20.                 var ob=document.getElementById('one');  
  21.                 ob.style[wd]=w200;  
  22.                 ob.style.height='200px';  
  23.                 ob.style.backgroundColor='red';  
  24.             }  
  25.         </script>  
  26.     </head>  
  27.     <body>                                        <!--實(shí)參-->  
  28.         <div class="box" id="one" onmouseover="bianda('width','400px')" onmouseout="bianx('width','200px')"></div>  
  29.     </body>  
  30. </html>  
一般我們可以這樣理解傳參:實(shí)參給形參的過程.

4、JavaScript返回值   <除非必要的傳回,不然可有可無(wú)>

js中 return 是返回值它能返回控制以及返回函數(shù)處理的結(jié)果
首先說返回處理 語(yǔ)法: return 表達(dá)式; 語(yǔ)句結(jié)束函數(shù)執(zhí)行,之前調(diào)用的函數(shù),而且把表達(dá)式的值作為函數(shù)處理過的結(jié)果
接著是返回控制 語(yǔ)法: return; <返回控制是沒有函數(shù)結(jié)果的>
在有些情況下,為事件處理函數(shù)返回false,可以防止默認(rèn)的事件行為
return false就相當(dāng)于終止符阻止事件的運(yùn)行 而return true 就相當(dāng)于執(zhí)行符。 
在js中return false的作用一般是用來(lái)取消默認(rèn)動(dòng)作的。比如你單擊一個(gè)鏈接除了觸發(fā)你的 
onclick事件(如果你指定的話)以外還要觸發(fā)一個(gè)默認(rèn)事件就是執(zhí)行頁(yè)面的跳轉(zhuǎn)。所以如果你想取消對(duì)象的默認(rèn)動(dòng)作就可以return false。
首先在js中,我們常用return false來(lái)阻止提交表單或者繼續(xù)執(zhí)行下面的代碼,通俗的來(lái)說就是阻止執(zhí)行默認(rèn)的行為。
return false 只在當(dāng)前函數(shù)有效,不會(huì)影響其他外部函數(shù)的執(zhí)行。
retrun true; 返回正確的處理結(jié)果。
return false;分會(huì)錯(cuò)誤的處理結(jié)果,終止處理。
return;把控制權(quán)返回給頁(yè)面。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多