这可能是一个非常愚蠢的问题。 我想在Javascript中查看函数的代码(内置和用户定义)。
For example :
function hello(){
console.log("hello")
}
hello.toString() // Gives the function definition
'function hello(){\nconsole.log("hello")\n}'
有没有办法查看像Math.random.toString()
这样的本机代码?
更新:根据评论,Seblor解释说看不到本机代码。
答案 0 :(得分:1)
您可以对字符串进行一些格式化,以更好地了解您的函数。使用这种和平的代码可以摆脱函数名称,而只获得代码。
function justGetCode(funcName)
{
var tempString = funcName.toString();
tempString = tempString.substring(tempString.indexOf("{"));
return tempString
}
但是除此之外,在封装本机代码(即特定于浏览器的代码)时,您几乎无能为力。但是,这应该适用于库函数。
现在我不知道您打算如何使用返回的函数,但是对于更高级的函数操作,您可以始终使用内置的reflection机制