Aqui está um exemplo que mostra as diferenças, o que ajudará na explicação.
var s1 = new String("Avoid newing things where possible");
var s2 = "A string, in TypeScript of type 'string'";
var s3: string;
String
é o tipo de String JavaScript, que você pode usar para criar novas strings. Ninguém faz isso como no JavaScript, os literais são considerados melhores; portanto, s2
no exemplo acima, cria uma nova string sem o uso da new
palavra - chave e sem o uso explícito do String
objeto.
string
é o tipo de string TypeScript, que você pode usar para digitar variáveis, parâmetros e valores de retorno.
Notas Adicionais...
Atualmente (fevereiro de 2013) Ambos s1
e s2
são JavaScript válido. s3
é TypeScript válido.
Uso de String
. Você provavelmente nunca precisará usá-lo, literais de string são universalmente aceitos como sendo a maneira correta de inicializar uma string. Em JavaScript, também é considerado melhor usar literais de objeto e literais de matriz também:
var arr = []; // not var arr = new Array();
var obj = {}; // not var obj = new Object();
Se você realmente tinha uma propensão para a string, poderia usá-la no TypeScript de uma de duas maneiras ...
var str: String = new String("Hello world"); // Uses the JavaScript String object
var str: string = String("Hello World"); // Uses the TypeScript string type