javascript
JS中变量和函数的使用
一、變量的介紹
1、啥是變量?
??變量的本質(zhì)是一塊有名字的內(nèi)存空間。變量由變量名和變量值構(gòu)成。變量名指的是內(nèi)存空間的別名,一般位于賦值運(yùn)算符的左邊;而變量值指的是內(nèi)存空間中的數(shù)據(jù),一般位于賦值運(yùn)算符的右邊。例如:var balance =250;其中balance為變量名,是內(nèi)存空間的別名;250為變量值,為數(shù)據(jù)。
2、如何聲明變量?
?暫且可將聲明理解為創(chuàng)造,當(dāng)聲明變量時,使用關(guān)鍵字 var。
?第一種:單獨(dú)聲明
?第二種:一個var多個聲明變量
<script>var a = 32,b = 45,c = 57; //利用一個var來聲明多個變量用逗號隔開var x = 123,y = 245,z = 100; //此寫法與上面意思一樣寫法不同而已 </script> 復(fù)制代碼?第三種:重復(fù)聲明
<script>var a = 120; var a = 356; //這些指令表明使用同一變量名聲明兩次,造成重復(fù) </script> 復(fù)制代碼?第四種:遺漏聲明
<script>var m = 12;var n = 32;alert(m) //可彈出m的值,卻遺漏了下面n的值 </script> 復(fù)制代碼?注意細(xì)節(jié):
??1.在JS中重復(fù)聲明雖然是允許的,但在開發(fā)中,不要這樣用;
??2.在JS中遺漏聲明也是允許,但在實(shí)際開發(fā)時, 也是要盡量避免的;
??3.在JS中,可以通過alert(),來彈出一個變量的值。
3、聲明變量的特征有?
特征1:如果僅僅是聲明變量,那么變量是有默認(rèn)值
<script>var a; // 如果你僅僅是聲明一個變量,并非賦值,那么它的默認(rèn)值為undefinedconsole.log(a) // 打印出a的值 </script> 復(fù)制代碼特征2:使用var 聲明的變量可以進(jìn)行提升,提升就是把加var的變量提前最前面
解析:JS代碼在執(zhí)行之前有一個預(yù)編譯,預(yù)編譯做了兩件事:
??(1)把加var的變量提升,提升的僅僅是聲明,而沒有賦值部分;
??(2)把函數(shù)提升到了代碼段(一個script標(biāo)簽就是一個代碼段)的最前面。 當(dāng)預(yù)解析完后,才會執(zhí)行JS代碼;
??(3)當(dāng)函數(shù)與變量套用著,加var的變量雖然那個要提升,但由于此時的變量為局部變量,只會提升到函數(shù)體的最前面。
4、變量分為哪幾類?
1.局部變量
??局部變量指在函數(shù)內(nèi)聲明的變量。它只能在函數(shù)內(nèi)部訪問,在函數(shù)外面是不能被訪問;就好像是各個地方的方言一樣。
2.全局變量
??全局指變量指在函數(shù)外聲明的變量。它在函數(shù)內(nèi)部和外部都可以訪問;就如同標(biāo)準(zhǔn)普通話在任何地區(qū)都可以用。
二、函數(shù)的認(rèn)識
1、啥是函數(shù)?
??函數(shù)可以說成是個功能塊,當(dāng)你給它一個輸入值時,在這個功能塊中通過某種關(guān)系或者說映射,就能得到一個輸出值。就像豆?jié){機(jī),將準(zhǔn)備的大豆放到機(jī)器中,通過榨汁得到一杯豆?jié){。
2、如何定義函數(shù)?
方式一:函數(shù)聲明
??用關(guān)鍵字function來聲明函數(shù),其中基本格式如下:function ?f(){ };其中有f為函數(shù)名;()是函數(shù)的特殊標(biāo)志;{}叫函數(shù)體或者具體的功能
方式二:函數(shù)表達(dá)式
??函數(shù)表達(dá)式本質(zhì)上是一個變量;它指的是將以function聲明的函數(shù)作為表達(dá)式放在賦值的右邊,重新定義一個變量。
區(qū)別:聲明函數(shù)與函數(shù)表達(dá)式兩者在提升階段不一樣;函數(shù)聲明可以將函數(shù)調(diào)用寫到函數(shù)聲明之前,而函數(shù)表達(dá)式則將函數(shù)調(diào)用提前會出錯。
函數(shù)聲明: <script>f();function f(){console.log("函數(shù)聲明提升") //此時是可以打印出"函數(shù)聲明提升"} </script> 函數(shù)表達(dá)式: <script>f();var g = function f(){console.log("函數(shù)表達(dá)式提升") //會報(bào)錯,f沒有定義} </script> 復(fù)制代碼3、函數(shù)返回值
1.函數(shù)在沒有寫return或者只寫了return時,默認(rèn)返回undefined。
(1) function f(){//這是相當(dāng)于默認(rèn)的return undefined;} (2)function f(){return; //同上,默認(rèn)的return undefined; } 復(fù)制代碼2.在一個函數(shù)中,執(zhí)行過return語句后,下面的語句將不再執(zhí)行。
function f(){console.log("caomeitai")return thanks; //當(dāng)執(zhí)行過該語句,下面不再執(zhí)行console.log("xiaoyuzhou") //并未執(zhí)行 } 復(fù)制代碼4、函數(shù)的參數(shù)
??在函數(shù)定義與函數(shù)調(diào)用時,有兩個參數(shù):形參與實(shí)參。形參即形式參數(shù),代表著在定義函數(shù)時,小括號中的參數(shù);實(shí)參即實(shí)際參數(shù)則代表在調(diào)用函數(shù)時,小括號中的參數(shù)。
function add(x,y){ //這里小括號中的x,y為形參return x+y; } console.log(add(2,3)); //在調(diào)用了add函數(shù)時的2,3為實(shí)參 復(fù)制代碼總結(jié)
以上是生活随笔為你收集整理的JS中变量和函数的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html旅游网站设计与实现——绿色古典旅
- 下一篇: 重学JavaScript深入理解系列(六