摘要:全局對(duì)象是比較特殊的對(duì)象。對(duì)象類(lèi)型包括普通對(duì)象命名值的無(wú)序集合,特殊對(duì)象數(shù)組帶編號(hào)值的有序集合,函數(shù)?;緮?shù)據(jù)類(lèi)型是按值訪(fǎng)問(wèn)的,因?yàn)榭梢圆僮鞅4嬖谧兞恐械膶?shí)際值。不允許直接訪(fǎng)問(wèn)內(nèi)存中的位置,也就是說(shuō)不能直接操作對(duì)象的內(nèi)存空間。
題目
javascript的數(shù)據(jù)類(lèi)型分為兩類(lèi): 原始類(lèi)型 和對(duì)象類(lèi)型(又基本類(lèi)型和引用類(lèi)型)
原始類(lèi)型包括:String, Boolean, Number, null, undefined
(null和undefined是兩個(gè)特殊的原始值,代表了各自特殊類(lèi)型的唯一成員)
對(duì)象是屬性和方法的集合,每個(gè)屬性都由“名/值對(duì)”構(gòu)成。全局對(duì)象是比較特殊的對(duì)象。
對(duì)象類(lèi)型包括:普通對(duì)象(“命名值”的無(wú)序集合),特殊對(duì)象-數(shù)組(帶編號(hào)值的有序集合),函數(shù)。基本數(shù)據(jù)類(lèi)型是按值訪(fǎng)問(wèn)的,因?yàn)榭梢圆僮鞅4嬖谧兞恐械膶?shí)際值。
引用類(lèi)型的值是保存在內(nèi)存中的對(duì)象。JS不允許直接訪(fǎng)問(wèn)內(nèi)存中的位置,也就是說(shuō)不能直接操作對(duì)象的內(nèi)存空間。在操作對(duì)象時(shí),實(shí)際上是在操作對(duì)象的引用而不是實(shí)際的對(duì)象,為此,應(yīng)用類(lèi)型的值是按照引用訪(fǎng)問(wèn)的。
var a = {"x": 1}; //對(duì)象是引用類(lèi)型,這里把對(duì)象{"x": 1}的引用地址賦值給變量a var b = a; //把a(bǔ)所引用的對(duì)象地址賦值給b,此時(shí)a和b指向同一個(gè)對(duì)象 a.x = 2; //把a(bǔ)所指向?qū)ο蟮膶傩詘設(shè)置為2,此時(shí)該對(duì)象為{"x": 2} b.x; //由于a和b指向同一個(gè)對(duì)象,所以b.x = a.x = 2 a = {"x":3}; //這里重新對(duì)a進(jìn)行賦值,把一個(gè)新對(duì)象{"x": 3}的引用地址賦值給變量a, //此時(shí)a指向這個(gè)新對(duì)象{"x": 3},而b仍然指向原來(lái)的對(duì)象{"x": 2} console.log(b.x); //這里輸出2就順理成章了
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/78179.html
摘要:系列題集系列題集系列題集系列題集系列題集系列題集系列題集隨手記幾個(gè)題目先,權(quán)當(dāng)草稿,如果有朋友幫忙分析下原因,不勝感激,哈哈以前的文章地址是這樣的格式,現(xiàn)在變了 從畢業(yè)開(kāi)始切圖接觸前端,慢慢轉(zhuǎn)向javascript開(kāi)發(fā)...但是,感覺(jué)自己的javascript難當(dāng)大任,基礎(chǔ)薄弱。網(wǎng)上面試題集很多,設(shè)計(jì)HTML/CSS/JS,但其中的問(wèn)題,如果不是自己親歷,沒(méi)有被難住,是不會(huì)有太深印象的...
摘要:知道了這些知識(shí)看看上面的題目為什么結(jié)果是包裝對(duì)象存取字符串,數(shù)字,布爾值的屬性時(shí)創(chuàng)建用構(gòu)造函數(shù)來(lái)創(chuàng)建的臨時(shí)對(duì)象稱(chēng)作包裝對(duì)象。 來(lái)自網(wǎng)絡(luò) var s=test;//創(chuàng)建字符串類(lèi)型變量 s.len=4;//創(chuàng)建包裝對(duì)象,為包裝對(duì)象添加屬性len //引用完畢,銷(xiāo)毀包裝對(duì)象 console.log(s.len);//創(chuàng)建包裝對(duì)象,查找其len屬性,沒(méi)有找到,返回undefined ...
var foo = 1; function bar() { foo = 10; return; function foo() {}//聲明提前 } bar(); console.log(foo); //為什么是1而不是10 http://segmentfault.com/q/1010000000598752
function bar() { return foo; foo = 10; function foo() {} var foo = 11; } console.log(typeof bar());//function 為什么不是number
var x = 3; var foo = { x: 2, baz: { x: 1, bar: function() { return this.x; } } } var go = foo.baz.bar; conso...
閱讀 3333·2021-09-08 09:45
閱讀 1264·2019-08-30 15:53
閱讀 1542·2019-08-30 14:12
閱讀 990·2019-08-29 17:01
閱讀 2583·2019-08-29 15:35
閱讀 407·2019-08-29 13:09
閱讀 1984·2019-08-29 12:32
閱讀 3096·2019-08-26 18:37