輕鬆學習JavaScript五:JavaScript的變數和資料類型

來源:互聯網
上載者:User

輕鬆學習JavaScript五:JavaScript的變數和資料類型

對於一們程式設計語言,肯定包含變數和資料類型。今天我們就來看看JavaScript指令碼語言的變數和資料類型。相對

於其他的Java,C++等進階程式語言,JavaScript顯得很簡單。

一變數

JavaScript的變數是鬆散類型的,所謂鬆散就是用來儲存任何類型的資料。變數是儲存資訊的容器。定義變數時

要使用var操作符(var是關鍵字),後面跟一個變數名(變數名是標識符)。變數也就是初始化後可以再次改變的量。

那麼我們來看看執行個體:
var x=2;var y=3;var z=2+3;document.write(x + "");document.write(y + "");document.write(z + "");

就像代數那樣:x=2,y=3,z=x+y在代數中,我們使用字母(比如x)來儲存值(比如2)。通過上面的運算式z=x+y,

我們能夠計算出z的值為5。在JavaScript中,這些字母被稱為變數。因此我們可以把變數看做儲存資料的容器。

(1)JavaScript變數名

與代數一樣,JavaScript變數可用於存放值(比如x=2)和運算式(比如z=x+y)。變數可以使用簡短名稱(比如x和y),也

可以使用描述性更好的名稱(比如age,sum, totalvolume)。

需要注意的是:

1變數必須以字母開頭

2變數也能以 $ 和 _ 符號開頭(不過我們不推薦這麼做)

3變數名稱對大小寫敏感(y和Y是不同的變數)

(2)JavaScript資料類型

JavaScript變數還能儲存其他資料類型,比如文本值(name="Bill Gates")。在JavaScript中,類似"Bill Gates"這樣

一條文本被稱為字串。JavaScript變數有很多種類型,但是現在,我們只關注數字和字串。向變數分配文本值

時,應該用雙引號或單引號包圍這個值。向變數賦的值是數值時,不要使用引號。如果您用引號包圍數值,該值會被

作為文本來處理。在後面有詳細的資料類型介紹。

執行個體:
var pi=3.14;var name="Bill Gates";var answer='Yes I am!';document.write(pi + "");document.write(name + "");document.write(answer + "");

(3)聲明(建立)JavaScript變數

在JavaScript中建立變數通常稱為“聲明”變數。一個好的編程習慣是,在代碼開始處,統一對需要的變數進行聲

明。聲明變數時也可以不使用var,但是不推薦使用這種。

我們使用var關鍵詞來聲明變數:var carname;

變數聲明之後,該變數是空的(它沒有值)。如需向變數賦值,請使用等號:carname="Volvo";

不過,您也可以在聲明變數時對其賦值:var carname="Volvo";

例子:我們建立了名為carname的變數,並向其賦值"Volvo",然後把它放入id="demo"的HTML段落中。


點擊這裡來建立變數,並顯示結果。

點擊這裡

 

<script type="text/javascript">function myFunction(){var carname="Volvo";document.getElementById("demo").innerHTML=carname;}</script>

點擊效果:

(4)一條語句,多個變數

您可以在一條語句中聲明很多變數。該語句以var開頭,並使用逗號分隔變數即可:

 

var name="Gates", age=56, job="CEO";

 

 

聲明也可橫跨多行:
var name="Gates",age=56,job="CEO";

在電腦程式中,經常會聲明無值的變數。未使用值來聲明的變數,其值實際上是 undefined。在執行過以下語句

後,變數carname的值將是undefined:var carname;

(6)重新聲明JavaScript變數

如果重新聲明JavaScript變數,該變數的值不會丟失:在以下兩條語句執行後,變數carname的值依然是"Volvo":

 

var carname="Volvo";var carname;

 

(7)JavaScript算數

您可以通過JavaScript變數來做算數,使用的是 和+這類運算子:

例子:

 


假設 y=5,計算 x=y+2,並顯示結果。

點擊這裡

 

<script type="text/javascript">function myFunction(){var y=5;var x=y+2;var demoP=document.getElementById("demo")demoP.innerHTML="x=" + x;}</script>

 

點擊效果:

二資料類型

JavaScript的資料類型包括字串、數字、布爾、數組、對象、Null、Undefined。在講資料類型之前我們先講一

個操作符typeof。

typeof操作符

typeof操作符是用來檢測變數的資料類型。對於值或變數使用typeof操作符會返回如下字串:

var box='English';alert(typeof box);alert(typeof English);

上述兩種方式都是可行的。

typeof操作符可以操作變數,也可以操作字面量。雖然可以這樣使用,typeof(box),但,typeof是操作符而非內建

函數。函數是對象,不是一種資料類型,所以,使用typeof來區分function和object是非常有必要的。

傳回值是函數的例子:
function box(){}alert(typeof box);//box是Function函數,值是function box(){},類型返回的字串是function。

(1)JavaScript擁有動態類型

JavaScript擁有動態類型。這意味著相同的變數可用作不同的類型:

執行個體:
var x                //x為undefinedvar x = 6;           //x為數字var x = "Bill";      //x為字串

(2)JavaScript字串String類型

字串是儲存字元的變數。字串可以是引號中的任意文本。您可以使用單引號或雙引號:;

執行個體:可以在字串中使用引號,只要不匹配包圍字串的引號即可
var carname1="Bill Gates";var carname2='Bill Gates';var answer1="Nice to meet you!";var answer2="He is called 'Bill'";var answer3='He is called "Bill"';document.write(carname1 + "")document.write(carname2 + "")document.write(answer1 + "")document.write(answer2 + "")document.write(answer3 + "")

字串類型還定義了逸出字元:

(3)JavaScript數字

JavaScript只有一種數字類型。數字可以帶小數點,也可以不帶。Number類型包含兩種數值:整型和浮點型。輸

出的格式均按照十進位數輸出。最基本的數值字面量是十進位。也包括八位元值字面量,前置必須是0,八進位序

列(0到7,以8為基數);十六進位字面量前面兩位必須是0x,後面的是(0到9及A到F);浮點類型,就是該數值中必須包

含一個小數點,並且小數點後面必須至少有一位元字。

1對於那些過大或過小的數值,我們可以採用科學計數法(e標記法),用e表示該數值的前面10的指數次冪。例如:

 

var box=4.12e-9;

 

2要想確定一個數值到底是否超過了規定範圍,可以使用isFinite()函數,如果沒有超過,返回true,超過了返回

false。

3isNaN()函數用來判斷這個值到底是不是NaN。isNaN()函數在接收到一個值後,會嘗試將這個值轉換為數值。

isNaN()函數也適用於對象。在調用isNaN()函數過程中,首先會調用value()方法,然後確定傳回值是否能夠轉換為數

值。如果不能,則基於這個傳回值再調用toString()方法,再測試傳回值。

執行個體:
var x1=36.00;var x2=36;var y=123e5;var z=123e-5;document.write(x1 + "")document.write(x2 + "")document.write(y + "")document.write(z + "")

(4)JavaScript布爾

布爾(邏輯)只能有兩個值:true或false。例如:

 

var x=true;var y=false;

 

(5)JavaScript數組

數組下標是基於零的,所以第一個項目是[0],第二個是[1],以此類推。下面的代碼建立名為cars的數組:
var cars=new Array();cars[0]="Audi";cars[1]="BMW";cars[2]="Volvo";
或者:
var cars=new Array("Audi","BMW","Volvo"); 
執行個體
var i;var cars = new Array();cars[0] = "Audi";cars[1] = "BMW";cars[2] = "Volvo";for (i=0;i

輸出的結果很容易知道。

(6)JavaScript對象

對象由花括弧分隔。在括弧內部,對象的屬性以名稱和值對的形式 (name : value) 來定義。屬性由逗號分隔:

 

var person={firstname:"Bill", lastname:"Gates", id:5566};

 

上面例子中的對象(person)有三個屬性:firstname,lastname以及id。空格和折行無關緊要。聲明可橫跨多行:
var person={firstname : "Bill",lastname  : "Gates",id:  5566};

對象屬性有兩種定址方式:

執行個體
var person={firstname : "Bill",lastname : "Gates",id:  5566};document.write(person.lastname + "");document.write(person["lastname"] + "");

(7)Undefined和Null

Undefined這個值表示變數不含有值。可以通過將變數的值設定為null來清空變數。

Undefined類型

 

var box;alert(typeof box);//box是Undefined類型,值是undefined,類型返回的字串是undefined。

 

Null類型

 

var box=null;alert(typeof box);//box是Null類型,值是null,類型返回的字串是object。

 

(8)聲明變數類型

JavaScript變數均為對象。當您聲明一個變數時,就建立了一個新的對象。當聲明新變數時,可以使用關鍵

詞"new"來聲明其類型:

 

var carname=new String;var x=      new Number;var y=      new Boolean;var cars=   new Array;var person= new Object;


 

 


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.