[請益] JavaScript如何列舉陣列所有可用方法?

看板Web_Design作者 (Gama)時間10年前 (2015/04/14 10:24), 編輯推噓6(6010)
留言16則, 6人參與, 最新討論串1/1
如標題,我想用一個for迴圈列舉出『陣列』所有可以使用的方法 例如,我使用以下程式可以列出所有『document』的方法 ============================================================ for (key in document) { document.write(key + ": " + document[key] + "<br>"); } ============================================================ 如果我改成... ============================================================ var myArray = [123, "abc"]; for (key in myArray) { document.write(key + ": " + myArray[key] + "<br>"); } ============================================================ 執行結果會輸出:『123』、『abc』 但這不是我要的結果... 請問各位大大要如何做呢... -- Sent from my GameBoy. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.72.38 ※ 文章網址: https://www.ptt.cc/bbs/Web_Design/M.1428978285.A.B1F.html

04/14 10:38, , 1F
in Array. prototype ?
04/14 10:38, 1F

04/14 10:47, , 2F
Object.getOwnPropertyNames(Array.prototype)
04/14 10:47, 2F

04/14 10:47, , 3F
可以拿到你想要的Array
04/14 10:47, 3F

04/14 17:38, , 4F
可以麻煩mmis1000大大提示清楚一點嗎?小弟剛學JS對JS
04/14 17:38, 4F

04/14 17:38, , 5F
還不是很熟悉QQ
04/14 17:38, 5F

04/14 18:21, , 6F
array 所有的method都在 Array. prototype 上阿,你應
04/14 18:21, 6F

04/14 18:22, , 7F
你應該去看一下js的繼承方式
04/14 18:22, 7F

04/14 18:51, , 8F
那是因為document裡面的東西就是那些
04/14 18:51, 8F

04/14 18:51, , 9F
a in b 是走過所有b 裏面的東西
04/14 18:51, 9F

04/14 18:52, , 10F
你的myArray 裡面是123 abc 他當然就拿到 123 abc
04/14 18:52, 10F

04/14 22:42, , 11F
看不懂問題在那..xd
04/14 22:42, 11F

04/17 07:29, , 12F
列舉出整個物件的方法 對象必須是物件
04/17 07:29, 12F

04/17 07:30, , 13F
而你用for in 列舉陣列 當然找到的是陣列裡的東西
04/17 07:30, 13F

04/17 07:35, , 14F
雖然陣列也是一個物件 數字也是一個物件
04/17 07:35, 14F

04/17 07:36, , 15F
但for in列舉method的技巧只適用於object型態的東西
04/17 07:36, 15F

04/17 07:38, , 16F
不算是一個列舉物件方法的方式
04/17 07:38, 16F
文章代碼(AID): #1LB7fjiV (Web_Design)