Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

typeconv update#768

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Open
joaquinelio wants to merge1 commit intojavascript-tutorial:master
base:master
Choose a base branch
Loading
fromjoaquinelio:typeconv2
Open
Changes fromall commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 22 additions & 32 deletions1-js/02-first-steps/07-type-conversions/article.md
View file
Open in desktop
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
# Conversiones de Tipos

La mayoría de las veces,losoperadores y funciones convierten automáticamente los valores quese les pasanal tipocorrecto. Esto es llamado "conversión de tipo".
La mayoría de las veces, operadores y funciones convierten automáticamente los valores querecibenal tipoque esperan.

Por ejemplo, `alert` convierte automáticamente cualquier valor a string para mostrarlo. Las operaciones matemáticas convierten los valores a números.

También hay casos donde necesitamos convertir de manera explícita un valor al tipo esperado.

```smart header="Aún no hablamos de objetos"
En este capítulo nohablamos deobjetos. Por ahora, solamente veremos los valores primitivos.
En este capítulo nocubrimosobjetos. Por ahora, solamente veremos valores primitivos.

Más adelante, después dehaberlos tratado, veremos en el capítulo <info:object-toprimitive> cómo funciona la conversión de objetos.
Más adelante, después deaprender objetos, veremos en el capítulo <info:object-toprimitive> cómo funciona la conversión.
```

##ToString
##Conversión a String

La conversión a string ocurre cuando necesitamos la representaciónen forma de texto de un valor.
La conversión a string ocurre cuando necesitamos la representacióntextual de un valor.

Por ejemplo, `alert(value)` lo hace para mostrarel valor como texto.
Por ejemplo, `alert(value)` lo hace para mostrar`value` como texto.

También podemos llamar a la función `String(value)` para convertirun valor a string:
También podemos llamar a la función `String(value)` para convertir`value` a string:

```js run
let value = true;
Expand All@@ -32,16 +32,17 @@ alert(typeof value); // string

La conversión a string es bastante obvia. El boolean `false` se convierte en `"false"`, `null` en `"null"`, etc.

##ToNumber
##Conversión numérica

La conversión numérica ocurre automáticamente en funciones matemáticas y expresiones.

Por ejemplo, cuando sedividen valores no numéricos usando`/`:
Por ejemplo, cuando seaplica la división`/` a valores no numéricos:

```js run
alert( "6" / "2" ); // 3, los strings son convertidos a números
```
Podemos usar la función `Number(value)` para convertir de forma explícita un valor a un número:

Podemos usar la función `Number(value)` para convertir de forma explícita `value` a un número:

```js run
let str = "123";
Expand All@@ -51,7 +52,8 @@ let num = Number(str); // se convierte en 123

alert(typeof num); // number
```
La conversión explícita es requerida usualmente cuando leemos un valor desde una fuente basada en texto, como lo son los campos de texto en los formularios, pero que esperamos que contengan un valor numérico.

Usualmente, se requiere la conversión explícita cuando leemos un valor desde una fuente basada en texto, como los formularios, si esperamos que contenga un número.

Si el string no es un número válido, el resultado de la conversión será `NaN`. Por ejemplo:

Expand All@@ -68,33 +70,22 @@ Reglas de conversión numérica:
|`undefined`|`NaN`|
|`null`|`0`|
|<code>true&nbsp;and&nbsp;false</code> | `1` y `0` |
| `string` | Se eliminan los espacios(incluye espacios, tabs `\t`, saltos de línea `\n`, etc.)al inicio y final del texto. Si el string resultante es vacío, el resultado es `0`, en caso contrario el número es "leído" del string. Un error devuelve `NaN`. |
| `string` | Se eliminan los espaciosen blanco (incluyendo espacios, tabs `\t`, saltos de línea `\n`, etc.)del inicio y final del texto. Si el string resultante es vacío, el resultado es `0`, en caso contrario el número es "leído" del string. Un error devuelve `NaN`. |

Ejemplos:

```js run
alert( Number(" 123 ") ); // 123
alert( Number("123z") ); // NaN (error al leerun númeroen "z")
alert( Number("123z") ); // NaN (error al leerel númerocuando encuentra "z")
alert( Number(true) ); // 1
alert( Number(false) ); // 0
```

Ten en cuenta que `null` y `undefined` se comportan de distinta manera aquí: `null` se convierte en `0` mientras que `undefined` se convierte en `NaN`.

````smart header="Adición '+' concatena strings"
Casi todas las operaciones matemáticas convierten valores a números. Una excepción notable es la suma `+`. Si uno de los valores sumados es un string, el otro valor es convertido a string.
Es importante notar que `null` y `undefined` se comportan de distinta manera aquí: `null` se convierte en `0` mientras que `undefined` se convierte en `NaN`.

Luego,losconcatena (une):
La mayoría delosoperadores matemáticos también ejecutan dicha conversión, lo veremos en el siguiente capítulo.

```js run
alert( 1 + '2' ); // '12' (string a la derecha)
alert( '1' + 2 ); // '12' (string a la izquierda)
```

Esto ocurre solo si al menos uno de los argumentos es un string, en caso contrario los valores son convertidos a número.
````

## ToBoolean
## Conversión booleana

La conversión a boolean es la más simple.

Expand DownExpand Up@@ -124,14 +115,13 @@ alert( Boolean(" ") ); // sólo espacios, también true (cualquier string no vac
```
````


## Resumen

Las tres conversiones de tipo más usadas son a string, a número y a boolean.

**`ToString`** -- Ocurre cuandose muestra algo. Se puede realizar con `String(value)`. La conversión a string es usualmenteobvia para los valores primitivos.
**`Conversión a String`** -- Ocurre cuandomostramos un valor. Se puede realizar con `String(value)`. La conversión a string es usualmenteevidente para los valores primitivos.

**`ToNumber`** -- Ocurre en operaciones matemáticas. Se puede realizar con `Number(value)`.
**`Conversión numérica`** -- Ocurre en operaciones matemáticas. Se puede realizar con `Number(value)`.

La conversión sigue las reglas:

Expand All@@ -142,7 +132,7 @@ La conversión sigue las reglas:
|<code>true&nbsp;/&nbsp;false</code> | `1 / 0` |
| `string` | El string es leído "como es", los espacios en blanco (incluye espacios, tabs `\t`, saltos de línea `\n`, etc.) tanto al inicio como al final son ignorados. Un string vacío se convierte en `0`. Un error entrega `NaN`. |

**`ToBoolean`** -- Ocurren en operaciones lógicas. Se puede realizar con `Boolean(value)`.
**`Conversión booleana`** -- Ocurren en operaciones lógicas. Se puede realizar con `Boolean(value)`.

Sigue las reglas:

Expand All@@ -152,7 +142,7 @@ Sigue las reglas:
|cualquier otro valor| `true` |


La mayoría de estas reglas son fáciles de entender y recordar. Las excepciones más notables dondela gente suele cometer errores son:
La mayoría de estas reglas son fáciles de entender y recordar. Las excepciones más notables dondese suele cometer errores son:

- `undefined` es `NaN` como número, no `0`.
- `"0"` y textos que solo contienen espacios como `" "` son `true` como boolean.
Expand Down

[8]ページ先頭

©2009-2025 Movatter.jp