Typescript: let name: string = "bob"; no funciona.

Creado en 15 abr. 2016  ·  3Comentarios  ·  Fuente: microsoft/TypeScript

Hola, comencé a usar TypeScript recientemente. Es un lenguaje súper útil para mí :)
Por cierto, estoy en un tutorial sobre String Type aquí https://www.typescriptlang.org/docs/handbook/basic-types.html

Versión de TypeScript:

1.8.10

Código

_No_ funciona.

_hello.ts_

let name: string = "bob";

Siempre que compilo, el compilador emitirá lo siguiente.

$ tsc hello.ts
../../usr/local/lib/node_modules/typescript/lib/lib.d.ts(16757,13): error TS2451: Cannot redeclare block-scoped variable 'name'.
hello.ts(1,5): error TS2451: Cannot redeclare block-scoped variable 'name'.

Funciona.

_hello.ts_

let aname: string = "bob";

Comportamiento esperado

Leí una parte de lib.d.ts y tiene declare var name: string; . Entonces puedo entender que el compilador emite un error. Sin embargo, ¿qué concepto no podemos usar la variable name en TypeScript?
Y creo que el tutorial que no funciona no es bueno :(
¿O hay algo mal en mí? Espero reproducir una respuesta :)

Question

Comentario más útil

Porque ya existe una variable llamada name en el _ámbito global_. Pruébelo en su navegador, console.log(name) y verá una cadena vacía (o tal vez alguna otra cadena) en lugar de undefined .

Reparar

Coloque su variable de nombre en un _module_ o namespace : https://basarat.gitbooks.io/typescript/content/docs/project/modules.html

Todos 3 comentarios

Porque ya existe una variable llamada name en el _ámbito global_. Pruébelo en su navegador, console.log(name) y verá una cadena vacía (o tal vez alguna otra cadena) en lugar de undefined .

Reparar

Coloque su variable de nombre en un _module_ o namespace : https://basarat.gitbooks.io/typescript/content/docs/project/modules.html

Documentación para esta variable: https://developer.mozilla.org/en-US/docs/Web/API/Window/name : rose:

@basarat
Gracias por su respuesta. Eso tiene tal significado ...
No sabía que ya hay name variable en el alcance global :)

@DanielRosenwasser
Gracias por arreglar el documento también :)

¿Fue útil esta página
0 / 5 - 0 calificaciones