diff options
author | Ryan Johnson <rjohnson@mozilla.com> | 2021-04-29 16:16:42 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-29 16:16:42 -0700 |
commit | 95aca4b4d8fa62815d4bd412fff1a364f842814a (patch) | |
tree | 5e57661720fe9058d5c7db637e764800b50f9060 /files/pt-pt/web/javascript/reference/global_objects/asyncfunction | |
parent | ee3b1c87e3c8e72ca130943eed260ad642246581 (diff) | |
download | translated-content-95aca4b4d8fa62815d4bd412fff1a364f842814a.tar.gz translated-content-95aca4b4d8fa62815d4bd412fff1a364f842814a.tar.bz2 translated-content-95aca4b4d8fa62815d4bd412fff1a364f842814a.zip |
remove retired locales (#699)
Diffstat (limited to 'files/pt-pt/web/javascript/reference/global_objects/asyncfunction')
-rw-r--r-- | files/pt-pt/web/javascript/reference/global_objects/asyncfunction/index.html | 124 |
1 files changed, 0 insertions, 124 deletions
diff --git a/files/pt-pt/web/javascript/reference/global_objects/asyncfunction/index.html b/files/pt-pt/web/javascript/reference/global_objects/asyncfunction/index.html deleted file mode 100644 index 4e454bacd9..0000000000 --- a/files/pt-pt/web/javascript/reference/global_objects/asyncfunction/index.html +++ /dev/null @@ -1,124 +0,0 @@ ---- -title: AsyncFunction -slug: Web/JavaScript/Reference/Global_Objects/AsyncFunction -translation_of: Web/JavaScript/Reference/Global_Objects/AsyncFunction ---- -<div>{{JSRef}}</div> - -<div>O constructor da função <strong>Async</strong> cria um novo objecto {{jsxref("Statements/async_function", "async function")}}. Em Javascript todas as funções asíncronas são na verdade objectos <code>AsyncFunction.</code></div> - -<p> </p> - -<p>Note-se que <code>AsyncFunction</code> não é um objecto global. Pode ser obtido da seguinte forma.</p> - -<pre class="brush: js">Object.getPrototypeOf(async function(){}).constructor -</pre> - -<h2 id="Síntaxe">Síntaxe</h2> - -<pre class="syntaxbox">new AsyncFunction([<var>arg1</var>[, <var>arg2</var>[, ...<var>argN</var>]],] <var>functionBody</var>)</pre> - -<h3 id="Parâmetros">Parâmetros</h3> - -<dl> - <dt><code>arg1, arg2, ... arg<em>N</em></code></dt> - <dd>Nomes usados pela função como nomes formais de argumentos . Cada um dos argumentos tem que ser uma <em>string</em> que corresponde a um identificador válido JavaScript ou uma lista separada por vírgulas; por exemplo "<code>x</code>", "<code>theValue</code>", ou "<code>a,b</code>".</dd> - <dt><code>functionBody</code></dt> - <dd>Uma <em>string</em> com os termos JavaScript que fazem parte da definição da função.</dd> -</dl> - -<h2 id="Descrição">Descrição</h2> - -<p>Os objectos {{jsxref("Statements/async_function", "async function")}} criados com o <em>constructor</em> <code>AsyncFunction</code> passam por um <em>parsing</em> quando as funções são criadas. Isto é menos eficiente que declarar uma função asíncrona com {{jsxref("Statements/async_function", "async function expression")}} e chamá-la no código porque dessa forma a função passa pelo <em>parsing</em> ao mesmo tempo que o resto do código.</p> - -<p>Todos os argumentos passados à função são tratados como os nomes dos identificadores dos parâmetros na função a ser criada, na ordem que são declarados.</p> - -<div class="note"> -<p><strong>Nota:</strong> {{jsxref("Statements/async_function", "async functions")}} criado com o <em>constructor</em> <code>AsyncFunction</code> não estão encapsulados ao contexto da sua criação, são sempre criados no âmbito global.</p> - -<p>Ao correr, podem aceder às suas prórpias variáveis e às variáveis globais, no entanto não conseguem aceder às que estão no contexto donde o constructor <code>AsyncFunction</code> foi chamado. Isto é diferente de chamar {{jsxref("Global_Objects/eval", "eval")}} com código para uma função asíncrona.</p> -</div> - -<p>A invocação do constructor <code>AsyncFunction</code> como uma função, i.e. sem usar o operador <code>new</code> tem o mesmo efeito que invocá-lo como <em>constructor</em>.</p> - -<p>Invoking the <code>AsyncFunction</code> constructor as a function (without using the <code>new</code> operator) has the same effect as invoking it as a constructor.</p> - -<h2 id="Propriedades">Propriedades</h2> - -<dl> - <dt><code><strong>AsyncFunction.length</strong></code></dt> - <dd>A propriedade comprimento do <em>constructor</em> do <code>AsyncFunction</code>, cujo valor é 1.</dd> - <dt>{{jsxref("AsyncFunction.prototype")}}</dt> - <dd>Permite adicionar propriedades a todos os objectos que são funções asíncronas.</dd> -</dl> - -<h2 id="AsyncFunction_prototype_object"><code>AsyncFunction</code> prototype object</h2> - -<h3 id="Propriedades_2">Propriedades</h3> - -<div>{{page('/pt-PT/docs/Web/JavaScript/Reference/Global_Objects/AsyncFunction/prototype', 'Properties')}}</div> - -<h2 id="Instâncias_de_AsyncFunction">Instâncias de <code>AsyncFunction</code></h2> - -<p>As instâncias de <code>AsyncFunction</code> herdam métodos e propriedades do {{jsxref("AsyncFunction.prototype")}}. Tal como com qualquer <em>constructor</em> pode-se mudar o <em>prototype object</em> para aplicar mudanças a todos as instâncias de <code>AsyncFunction</code>.</p> - -<h2 id="Exemplos">Exemplos</h2> - -<h3 id="Exemplo_de_criação_de_uma_função_async_a_partir_de_um_constructor_AsyncFunction">Exemplo de criação de uma função <em>async</em> a partir de um <em>constructor</em> <code>AsyncFunction</code></h3> - -<pre class="brush: js">function resolveAfter2Seconds(x) { - return new Promise(resolve => { - setTimeout(() => { - resolve(x); - }, 2000); - }); -} - -var AsyncFunction = Object.getPrototypeOf(async function(){}).constructor - -var a = new AsyncFunction('a', - 'b', - 'return await resolveAfter2Seconds(a) + await resolveAfter2Seconds(b);'); - -a(10, 20).then(v => { - console.log(v); // prints 30 after 4 seconds -}); -</pre> - -<h2 id="Especificações">Especificações</h2> - -<table class="standard-table"> - <thead> - <tr> - <th scope="col">Specification</th> - <th scope="col">Status</th> - <th scope="col">Comment</th> - </tr> - </thead> - <tbody> - <tr> - <td>{{SpecName('ESDraft', '#sec-async-function-objects', 'AsyncFunction object')}}</td> - <td>{{Spec2('ESDraft')}}</td> - <td>Definição inicial em ES2017.</td> - </tr> - </tbody> -</table> - -<h2 id="Compatibilidade_de_navegadores">Compatibilidade de navegadores</h2> - -<div> - - -<p>{{Compat("javascript.builtins.AsyncFunction")}}</p> -</div> - -<h2 id="See_also">See also</h2> - -<ul> - <li>{{jsxref("Statements/async_function", "async function function")}}</li> - <li>{{jsxref("Operators/async_function", "async function expression")}}</li> - <li>{{jsxref("Global_Objects/Function", "Function")}}</li> - <li>{{jsxref("Statements/function", "function statement")}}</li> - <li>{{jsxref("Operators/function", "function expression")}}</li> - <li>{{jsxref("Functions_and_function_scope", "Functions and function scope", "", 1)}}</li> -</ul> |