国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js中的值類型和引用類型小結(jié) 文字說明與實(shí)例

2019-11-21 00:02:47
字體:
供稿:網(wǎng)友
一、擁抱JavaScript

曾經(jīng)名不經(jīng)傳的JavaScript隨著AJAX的流行而身價(jià)倍增,現(xiàn)在JavaScript不再僅僅是WEB開發(fā)中一個(gè)可有可無的輔助工具,甚至有了專門屬于它的職位“JavaScript工程師”,那怕你僅僅是一名WEB后臺開發(fā)程序員,你都必須了解JavaScript,至少在一些相關(guān)招聘職位要求上你可以看到“熟悉JavaScript優(yōu)先”的字眼。甚至我還要告訴你,你將可以用JavaScript開發(fā)桌面軟件,這得益于Adobe AIR的另外一種開發(fā)模式,即用HTML+CSS+JavaScript開發(fā)AIR。

二、值類型和引用類型話題
隨著部分有大型面向?qū)ο笳Z言基礎(chǔ)朋友的介入,他們試著用JavaScript去模擬面像對象的各種特征,盡管有些模擬顯得較為牽強(qiáng),但也讓我們見識到了JavaScript的強(qiáng)大與靈活性。本文暫不探討JavaScript面向?qū)ο缶幊碳夹g(shù)。就講講JavaScript中的兩種變量類型:即值類型和引用類型,這通常又會(huì)讓你聯(lián)想到“堆棧”,另外還有“引用地址”或“指針”相關(guān)概念,有過Java或C#編程經(jīng)驗(yàn)的人相信對這兩種類型不陌生。下面就舉例講一下這兩種類型在JavaScript中的體現(xiàn)、用法及注意事項(xiàng)。

三、JavaScript值類型和引用類型有哪些

(1)值類型:數(shù)值、布爾值、null、undefined。

(2)引用類型:對象、數(shù)組、函數(shù)。

四、如何理解值類型和引用類型及舉例

我們可以用“連鎖店”和“連鎖店鑰匙”來理解,不知道以下比喻合不合適,^-^。

(1)值類型理解:變量的交換等于在一個(gè)新的地方按照連鎖店的規(guī)范標(biāo)準(zhǔn)(統(tǒng)一店面理解為相同的變量內(nèi)容)新開一個(gè)分店,這樣新開的店與其它舊店互不相關(guān)、各自運(yùn)營。

【值類型例子】
復(fù)制代碼 代碼如下:

function chainStore()
{
var store1='Nike China';
var store2=store1;
store1='Nike U.S.A.';
alert(store2); //Nike China
}
chainStore();
//把一個(gè)值類型(也可以叫基本類型)store2傳遞給另一個(gè)變量(賦值)時(shí),其實(shí)是分配了一塊新的內(nèi)存空間,因此改變store1的值對store2沒有任何影響,因?yàn)樗幌褚妙愋?,變量的交換其實(shí)是交換了指像同一個(gè)內(nèi)容的地址。

(2)引用類型理解:變量的交換等于把現(xiàn)有一間店的鑰匙(變量引用地址)復(fù)制一把給了另外一個(gè)老板,此時(shí)兩個(gè)老板同時(shí)管理一間店,兩個(gè)老板的行為都有可能對一間店的運(yùn)營造成影響。

【引用類型例子】
復(fù)制代碼 代碼如下:

function chainStore()
{
var store1=['Nike China'];
var store2=store1;
alert(store2[0]); //Nike China
store1[0]='Nike U.S.A.';
alert(store2[0]); //Nike U.S.A.
}
chainStore();
//在上面的代碼中,store2只進(jìn)行了一次賦值,理論上它的值已定,但后面通過改寫store1的值,發(fā)現(xiàn)store2的值也發(fā)生了改變,這正是引用類型的特征,也是我們要注意的地方。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 莱芜市| 岗巴县| 吉木萨尔县| 綦江县| 密山市| 敦化市| 彭山县| 文山县| 宿州市| 辽阳市| 隆化县| 原阳县| 荃湾区| 黔西| 新宾| 申扎县| 商洛市| 甘谷县| 敖汉旗| 玉田县| 宁蒗| 白城市| 辽宁省| 蒲城县| 铜鼓县| 北辰区| 福清市| 社会| 金门县| 色达县| 大余县| 白河县| 陆良县| 喀喇| 镇巴县| 陈巴尔虎旗| 乌恰县| 福海县| 高密市| 集安市| 边坝县|