Baseline Widely available *
O método toString()
retorna uma string representando o código fonte da função.
function sum(a, b) {
return a + b;
}
console.log(sum.toString());
// Expected output: "function sum(a, b) {
// return a + b;
// }"
console.log(Math.abs.toString());
// Expected output: "function abs() { [native code] }"
Sintaxe Valor de retorno
Uma string representando o código fonte da função.
DescriçãoO objeto da Function
substitui o método toString
herdado de Object
; ele não herda Object.prototype.toString
. Para objetos Function
definidos pelo usuário, o método toString
retorna uma string contendo o seguimento de texto de origem que foi usado para definir a função
O JavaScript chama o método toString
automaticamente quando uma Function
pode ser representada como um valor de texto. e.x. quando uma função é concatenada com uma string.
O método toString()
lançará uma exceção do tipo TypeError
("Function.prototype.toString called on incompatible object") se o valor this
do objeto não é um objeto do tipo Function.
Function.prototype.toString.call("foo"); // TypeError
Se o método toString()
é chamado por objetos de funções embutidas ou por uma função criada por Function.prototype.bind
, toString()
retorna uma string de uma função nativa que parece
"function () {\n [native code]\n}";
Se o método toString()
é chamado por uma função criada pelo contrutor de Function
, toString()
retorna o código fonte de uma declaração de função sintetizada chamada "anonymous" usando os parâmetros passados e o corpo da função.
function f(){}
"function f(){}"
class A { a(){} }
"class A { a(){} }"
function* g(){}
"function* g(){}"
a => a
"a => a"
({ a(){} }.a)
"a(){}"
({ *a(){} }.a)
"*a(){}"
({ [0](){} }[0])
"[0](){}"
Object.getOwnPropertyDescriptor({ get a(){} }, "a").get
"get a(){}"
Object.getOwnPropertyDescriptor({ set a(x){} }, "a").set
"set a(x){}"
Function.prototype.toString
"function toString() { [native code] }"
(function f(){}.bind(0))
"function () { [native code] }"
Function("a", "b")
"function anonymous(a\n) {\nb\n}"Especificações Compatibilidade com navegadores Notas especÃficas do Firefox
Function.prototype.toString()
tem sido implementada salvando o fonte da função. O descompilador foi removido o que torna o parâmetro indentation
desnecessário. Veja Erro do Firefox 761723 para mais detalhes.Function.prototype.toString()
lançava exceções para objetos Proxy
(Erro do Firefox 1100936 e Erro do Firefox 1440468).RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4