javascript - 這是什么數(shù)組?
問(wèn)題描述
在學(xué)習(xí)正則表達(dá)式的時(shí)候,發(fā)現(xiàn)exec方法返回了這樣一個(gè)數(shù)組,請(qǐng)問(wèn)這是什么數(shù)組?
我在瀏覽器控制臺(tái)輸入了這個(gè)數(shù)組,發(fā)現(xiàn)報(bào)錯(cuò)了
問(wèn)題解答
回答1:我typeof 看它,說(shuō)是一個(gè)對(duì)象,不過(guò)typeof檢查數(shù)據(jù)也會(huì)告訴你是對(duì)象。
我又用 Array.isArray 檢查,返回true。
所以我看了一下 MDN 上面關(guān)于這個(gè)函數(shù)的解釋:
https://developer.mozilla.org...
它說(shuō)返回值是一個(gè)數(shù)組。
我看了一下 ECMA 5.1 上面數(shù)組相關(guān)描述也沒(méi)有找到
http://ecma-international.org...
所以我也在這里等大神來(lái)解答 =。=
----------------- 強(qiáng)行解釋的分割線 -----------------
數(shù)組的實(shí)例也是一個(gè)對(duì)象,所以確實(shí)可以給它添加屬性并賦值。
但是要注意,不是復(fù)合類型的變量,是沒(méi)有辦法給它們的實(shí)例添加屬性并賦值的。因?yàn)樽隽艘矝](méi)有用。
我記混了,所以以為沒(méi)有辦法給數(shù)值的實(shí)例添加屬性賦值。。。。。
回答2:let a = ['Box'];a.index = 10;a.input = 'This is a Box! That is a Box!';回答3:
正則的exec返回值雖然說(shuō)是數(shù)組, 但是有其他屬性, 具體可以看文檔文檔, 多翻翻犀牛書或者高程吧
回答4:var a = [];a[0] = ’tets’a[1] = ’fasfasf’a.index = ’對(duì)象屬性’
輸出 a 得到,在JavaScript里面,數(shù)組也是一個(gè)對(duì)象
['tets', 'fasfasf', index: '哈哈哈']
回答5:我的理解是數(shù)組的成員和數(shù)組對(duì)象上的成員。]
var a={0:'Box'};a.index=10;a.input='This is a Box! That is a Box!';var b=['Box'];b.index=10;b.input='This is a Box! That is a Box!'console.log(a,b);
其實(shí)這里最讓人迷惑的是,['Box'].index=10為什么可以設(shè)置成功?先看打印結(jié)果:
為了更清晰地說(shuō)明,我們將其展開,觀察其原型鏈。對(duì)象a的原型鏈:數(shù)組b的原型鏈:
由上圖可以看出,數(shù)組從原型鏈上繼承了Obejct對(duì)象類型的方法。當(dāng)['box']在Array(0)中找不到對(duì)應(yīng)方法時(shí),會(huì)沿著原型鏈向下,到Object中去尋找方法。所以理論上來(lái)說(shuō),數(shù)組類型也可以認(rèn)為是對(duì)象類型的一種。
var a = [’box’];a.index = ’dsfsaf’;a.input = ’gfhdsgsadreqw’;console.log(a)回答8:
第一個(gè)問(wèn)題:就是普通的數(shù)組
第二個(gè)問(wèn)題:語(yǔ)法錯(cuò)誤
[] 定義數(shù)組
相關(guān)文章:
1. 求大神支招,php怎么操作在一個(gè)html文件的<head>標(biāo)記內(nèi)添加內(nèi)容?2. 安裝了“PHP工具箱”,但只能以“游客”身份登錄3. 老師們php,插入數(shù)據(jù)庫(kù)mysql,都是空的,要怎么解決4. 跨類調(diào)用后,找不到方法5. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語(yǔ)法實(shí)現(xiàn)存在即更新應(yīng)該使用哪個(gè)標(biāo)簽?6. 致命錯(cuò)誤: Class ’appfacadeTest’ not found7. 在應(yīng)用配置文件 app.php 中找不到’route_check_cache’配置項(xiàng)8. PHP類屬性聲明?9. 怎么php怎么通過(guò)數(shù)組顯示sql查詢結(jié)果呢,查詢結(jié)果有多條,如圖。10. phpstady在win10上運(yùn)行
