Skip to content

Commit

Permalink
pt-br: Format /web/javascript using Prettier (part 3) (#14827)
Browse files Browse the repository at this point in the history
  • Loading branch information
queengooborg authored Aug 10, 2023
1 parent d50946f commit 0879daa
Show file tree
Hide file tree
Showing 100 changed files with 1,298 additions and 1,157 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -57,20 +57,20 @@ const list = ["Moto", "Ônibus", "Carro"];

console.log(
new Intl.ListFormat("pt-BR", { style: "long", type: "conjunction" }).format(
list
)
list,
),
);
// > Moto, Ônibus e Carro

console.log(
new Intl.ListFormat("pt-BR", { style: "short", type: "disjunction" }).format(
list
)
list,
),
);
// > Moto, Ônibus ou Carro

console.log(
new Intl.ListFormat("pt-BR", { style: "narrow", type: "unit" }).format(list)
new Intl.ListFormat("pt-BR", { style: "narrow", type: "unit" }).format(list),
);
// > Moto Ônibus Carro
```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -102,24 +102,24 @@ Este exemplo mostra algumas variações de formatos de números localizados. A f
var numero = 123456.789;

// O alemão usa vírgula como separador de decimal e ponto para milhares
console.log(new Intl.NumberFormat('de-DE').format(numero));
console.log(new Intl.NumberFormat("de-DE").format(numero));
// → 123.456,789

// O árabe usa dígitos reais árabes em muitos países que falam árabe
console.log(new Intl.NumberFormat('ar-EG').format(numero));
console.log(new Intl.NumberFormat("ar-EG").format(numero));
// → ١٢٣٤٥٦٫٧٨٩

// A Índia usa separadores de milhares/cem mil/dez milhões
console.log(new Intl.NumberFormat('en-IN').format(numero));
console.log(new Intl.NumberFormat("en-IN").format(numero));
// → 1,23,456.789

// A chave de extensão nu requer um sistema de numeração, ex. decimal chinês
console.log(new Intl.NumberFormat('zh-Hans-CN-u-nu-hanidec').format(numero));
console.log(new Intl.NumberFormat("zh-Hans-CN-u-nu-hanidec").format(numero));
// → 一二三,四五六.七八九

// Quando informada uma língua sem suporte, como balinês,
// inclua uma língua reseva, neste caso indonésio
console.log(new Intl.NumberFormat(['ban', 'id']).format(numero));
console.log(new Intl.NumberFormat(["ban", "id"]).format(numero));
// → 123.456,789
```

Expand All @@ -131,24 +131,36 @@ Os resultados podem ser personalizados usando o argumento `options`:
var numero = 123456.789;

// informando um formato de moeda
console.log(new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format(numero));
console.log(
new Intl.NumberFormat("de-DE", { style: "currency", currency: "EUR" }).format(
numero,
),
);
// → 123.456,79 €

// o yen japonês não tem uma unidade menor
console.log(new Intl.NumberFormat('ja-JP', { style: 'currency', currency: 'JPY' }).format(numero));
console.log(
new Intl.NumberFormat("ja-JP", { style: "currency", currency: "JPY" }).format(
numero,
),
);
// → ¥123,457

// limitando a três dígitos significativos
console.log(new Intl.NumberFormat('en-IN', { maximumSignificantDigits: 3 }).format(numero));
console.log(
new Intl.NumberFormat("en-IN", { maximumSignificantDigits: 3 }).format(
numero,
),
);
// → 1,23,000
```

## Especificações

| Especificação | Status | Comentário |
| ---------------------------------------------------------------------------------------------------- | -------------------------------- | ------------------ |
| {{SpecName('ES Int 1.0', '#sec-11.1', 'Intl.NumberFormat')}} | {{Spec2('ES Int 1.0')}} | Definição inicial. |
| {{SpecName('ES Int 2.0', '#sec-11.1', 'Intl.NumberFormat')}} | {{Spec2('ES Int 2.0')}} | |
| Especificação | Status | Comentário |
| -------------------------------------------------------------------------- | ------------------------- | ------------------ |
| {{SpecName('ES Int 1.0', '#sec-11.1', 'Intl.NumberFormat')}} | {{Spec2('ES Int 1.0')}} | Definição inicial. |
| {{SpecName('ES Int 2.0', '#sec-11.1', 'Intl.NumberFormat')}} | {{Spec2('ES Int 2.0')}} | |
| {{SpecName('ES Int Draft', '#numberformat-objects', 'Intl.NumberFormat')}} | {{Spec2('ES Int Draft')}} | |

## Compatibilidade com navegadores
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,9 +74,9 @@ O exemplo a seguir mostra como criar um formatador de tempo relativo usando a l
// Crie um formatador de tempo relativo no seu local
// com os valores padrão sendo passados explicitamente.
const rtf = new Intl.RelativeTimeFormat("pt", {
localeMatcher: "best fit", // outros valores: "lookup"
numeric: "always", // outros valores: "auto"
style: "long", // outros valores: "short" ou "narrow"
localeMatcher: "best fit", // outros valores: "lookup"
numeric: "always", // outros valores: "auto"
style: "long", // outros valores: "short" ou "narrow"
});

// Formatação de tempo relativa usando valor negativo (-1).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,26 +27,25 @@ Você pode usar esta função para determinar se um número é um número finito
## Exemplos

```js
isFinite(Infinity); // false
isFinite(NaN); // false
isFinite(Infinity); // false
isFinite(NaN); // false
isFinite(-Infinity); // false

isFinite(0); // true
isFinite(2e64); // true
isFinite(null); // true
isFinite(0); // true
isFinite(2e64); // true
isFinite(null); // true


isFinite("0"); // true, teria sido false com o
// mais robusto Number.isFinite("0")
isFinite("0"); // true, teria sido false com o
// mais robusto Number.isFinite("0")
```

## Especificações

| Especificação | Status | Comentário |
| ------------------------------------------------------------------------ | ------------------------ | ------------------ |
| {{SpecName('ES3')}} | {{Spec2('ES3')}} | Definição inicial. |
| {{SpecName('ES5.1', '#sec-15.1.2.5', 'isFinite')}} | {{Spec2('ES5.1')}} | |
| {{SpecName('ES6', '#sec-isfinite-number', 'isFinite')}} | {{Spec2('ES6')}} | |
| Especificação | Status | Comentário |
| ------------------------------------------------------- | ------------------ | ------------------ |
| {{SpecName('ES3')}} | {{Spec2('ES3')}} | Definição inicial. |
| {{SpecName('ES5.1', '#sec-15.1.2.5', 'isFinite')}} | {{Spec2('ES5.1')}} | |
| {{SpecName('ES6', '#sec-isfinite-number', 'isFinite')}} | {{Spec2('ES6')}} | |

## Browser compatibilidade

Expand Down
36 changes: 18 additions & 18 deletions files/pt-br/web/javascript/reference/global_objects/isnan/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,36 +45,36 @@ A ultima versão do ECMAScript (ES6) contém A função {{jsxref("Number.isNaN()
A polyfill for `isNaN` would be (the polyfill leverages the unique never-equal-to-itself characteristic of `NaN`):

```js
var isNaN = function(value) {
var n = Number(value);
return n !== n;
var isNaN = function (value) {
var n = Number(value);
return n !== n;
};
```

## Exemplos

```js
isNaN(NaN); // true
isNaN(NaN); // true
isNaN(undefined); // true
isNaN({}); // true
isNaN({}); // true

isNaN(true); // false
isNaN(null); // false
isNaN(37); // false
isNaN(true); // false
isNaN(null); // false
isNaN(37); // false

// strings
isNaN("37"); // false: "37" is converted to the number 37 which is not NaN
isNaN("37.37"); // false: "37.37" is converted to the number 37.37 which is not NaN
isNaN(""); // false: the empty string is converted to 0 which is not NaN
isNaN(" "); // false: a string with spaces is converted to 0 which is not NaN
isNaN("37"); // false: "37" is converted to the number 37 which is not NaN
isNaN("37.37"); // false: "37.37" is converted to the number 37.37 which is not NaN
isNaN(""); // false: the empty string is converted to 0 which is not NaN
isNaN(" "); // false: a string with spaces is converted to 0 which is not NaN

// dates
isNaN(new Date()); // false
isNaN(new Date().toString()); // true
isNaN(new Date()); // false
isNaN(new Date().toString()); // true

// Esse é um falso positivo e é a razão para isNaN não seja totalmente confiável.
isNaN("blabla") // true: "blabla" é convertido para número.
// A análise desse número falha e retorna NaN como resultado.
isNaN("blabla"); // true: "blabla" é convertido para número.
// A análise desse número falha e retorna NaN como resultado.
```

### Useful special-case behavior
Expand All @@ -85,8 +85,8 @@ You can use this, for example, to test whether an argument to a function is arit

## Specifications

| Specification |
| ------------------------------------------------------------------------ |
| Specification |
| ----------------------------------------------------- |
| {{SpecName('ESDraft', '#sec-isnan-number', 'isNaN')}} |

## Compatibilidade com navegadores
Expand Down
69 changes: 44 additions & 25 deletions files/pt-br/web/javascript/reference/global_objects/json/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ O Objeto **`JSON`** contém métodos para parsing [JavaScript Object Notation](h

JSON é uma sintaxe para serialização de objetos, matrizes, números, strings, booleanos, e {{jsxref ("null")}}. Baseia-se em sintaxe Javascript, mas é distinta desta: alguns Javascript não são JSON, e alguns JSON não são Javascript.

| JavaScript tipo | JSON diferenças |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Objetos e Arrays | Os nomes das propriedades devem ser strings com aspas duplas; as vírgulas à direita são proibidas. |
| Números | Zeros à esquerda são proibidos; um ponto decimal deve ser seguido por pelo menos um dígito. |
| JavaScript tipo | JSON diferenças |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Objetos e Arrays | Os nomes das propriedades devem ser strings com aspas duplas; as vírgulas à direita são proibidas. |
| Números | Zeros à esquerda são proibidos; um ponto decimal deve ser seguido por pelo menos um dígito. |
| Strings | Apenas um conjunto limitado de caracteres pode ser escapado; certos caracteres de controle são proibidos; o separador de linha Unicode ([U+2028](http://unicode-table.com/en/2028/)) e o separador de parágrafo ([U+2029](http://unicode-table.com/en/2029/)) caracteres são permitidos; strings devem ter aspas duplas.Veja o exemplo a seguir, onde {{jsxref("JSON.parse()")}} funciona bem e um {{jsxref("SyntaxError")}} é lançado ao avaliar o código como JavaScript: var code = '"\u2028\u2029"'; JSON.parse(code); // works fine eval(code); // fails |

A sintaxe completa do JSON é a seguinte:
Expand Down Expand Up @@ -91,50 +91,69 @@ O algoritmo a seguir é uma imitação do objeto nativo JSON:
```js
if (!window.JSON) {
window.JSON = {
parse: function(sJSON) { return eval('(' + sJSON + ')'); },
parse: function (sJSON) {
return eval("(" + sJSON + ")");
},
stringify: (function () {
var toString = Object.prototype.toString;
var isArray = Array.isArray || function (a) { return toString.call(a) === '[object Array]'; };
var escMap = {'"': '\\"', '\\': '\\\\', '\b': '\\b', '\f': '\\f', '\n': '\\n', '\r': '\\r', '\t': '\\t'};
var escFunc = function (m) { return escMap[m] || '\\u' + (m.charCodeAt(0) + 0x10000).toString(16).substr(1); };
var isArray =
Array.isArray ||
function (a) {
return toString.call(a) === "[object Array]";
};
var escMap = {
'"': '\\"',
"\\": "\\\\",
"\b": "\\b",
"\f": "\\f",
"\n": "\\n",
"\r": "\\r",
"\t": "\\t",
};
var escFunc = function (m) {
return (
escMap[m] ||
"\\u" + (m.charCodeAt(0) + 0x10000).toString(16).substr(1)
);
};
var escRE = /[\\"\u0000-\u001F\u2028\u2029]/g;
return function stringify(value) {
if (value == null) {
return 'null';
} else if (typeof value === 'number') {
return isFinite(value) ? value.toString() : 'null';
} else if (typeof value === 'boolean') {
return "null";
} else if (typeof value === "number") {
return isFinite(value) ? value.toString() : "null";
} else if (typeof value === "boolean") {
return value.toString();
} else if (typeof value === 'object') {
if (typeof value.toJSON === 'function') {
} else if (typeof value === "object") {
if (typeof value.toJSON === "function") {
return stringify(value.toJSON());
} else if (isArray(value)) {
var res = '[';
var res = "[";
for (var i = 0; i < value.length; i++)
res += (i ? ', ' : '') + stringify(value[i]);
return res + ']';
} else if (toString.call(value) === '[object Object]') {
res += (i ? ", " : "") + stringify(value[i]);
return res + "]";
} else if (toString.call(value) === "[object Object]") {
var tmp = [];
for (var k in value) {
if (value.hasOwnProperty(k))
tmp.push(stringify(k) + ': ' + stringify(value[k]));
tmp.push(stringify(k) + ": " + stringify(value[k]));
}
return '{' + tmp.join(', ') + '}';
return "{" + tmp.join(", ") + "}";
}
}
return '"' + value.toString().replace(escRE, escFunc) + '"';
};
})()
})(),
};
}
```

## Especificações

| Especificação | Status | Comentário |
| ---------------------------------------------------------------- | ------------------------ | ---------- |
| {{SpecName('ES5.1', '#sec-15.12', 'JSON')}} | {{Spec2('ES5.1')}} | |
| {{SpecName('ES6', '#sec-json-object', 'JSON')}} | {{Spec2('ES6')}} | |
| Especificação | Status | Comentário |
| ----------------------------------------------- | ------------------ | ---------- |
| {{SpecName('ES5.1', '#sec-15.12', 'JSON')}} | {{Spec2('ES5.1')}} | |
| {{SpecName('ES6', '#sec-json-object', 'JSON')}} | {{Spec2('ES6')}} | |

## Navegador compatível

Expand Down
Loading

0 comments on commit 0879daa

Please sign in to comment.