繁体   English   中英

获取JavaScript的Array中的方法列表

[英]get list of methods in JavaScript's Array

var c=$('<canvas></canvas>')[0].getContext('2d')
for(m in c){console.log(m)}

这将在CanvasRenderingContext2D中打印方法列表。 我怎样才能对数组做同样的事情。 我希望得到“拼接”,“弹出”,“推送”等。显然for(m in Array.prototype){console.log(m)}将不起作用。

内置对象的大多数方法和属性在内部标记为不可枚举,因此它们不会在for-in循环中枚举。

ECMAScript 5有一个Object.getOwnPropertyNames方法,它返回一个包含所有属性名称的数组,因此你可以这样做:

Object.getOwnPropertyNames(Array.prototype)

但尚未得到所有浏览器的支持。

做这个:

for (m in Array) {
    console.log(m)
}

输出:

from
type
implement
extend
alias
mirror
$family
$constructor
pop
push
reverse
shift
sort
splice
unshift
concat
join
slice
indexOf
lastIndexOf
filter
forEach
every
map
some
reduce
reduceRight
each
clone
invoke
clean
associate
link
contains
append
getLast
getRandom
include
combine
erase
empty
flatten
pick
hexToRgb
rgbToHex
overloadSetter
overloadGetter
hide
protect
apply
call
attempt
pass
delay
periodical
create
bind
bindWithEvent
run

我不知道如何用普通的js做到这一点。 我通常有undercorejs加载ant它有一个函数返回一个对象的所有函数

http://documentcloud.github.com/underscore/#functions

您可以检查underscorejs代码以检查它们是如何做的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM