Oto przykład, który pokazuje różnice, które pomogą w wyjaśnieniu.
var s1 = new String("Avoid newing things where possible");
var s2 = "A string, in TypeScript of type 'string'";
var s3: string;
Stringjest typem ciągu znaków JavaScript, którego można użyć do tworzenia nowych ciągów znaków. Nikt tego nie robi, ponieważ w JavaScript literały są uważane za lepsze, więc s2w powyższym przykładzie tworzy nowy ciąg bez użycia newsłowa kluczowego i bez jawnego użycia Stringobiektu.
string to typ ciągu TypeScript, którego można używać do wpisywania zmiennych, parametrów i zwracanych wartości.
Dodatkowe uwagi ...
Obecnie (luty 2013), Obie s1i s2obowiązują JavaScript. s3jest poprawnym TypeScript.
Korzystanie z String. Prawdopodobnie nigdy nie musisz go używać, literały łańcuchowe są powszechnie akceptowane jako właściwy sposób inicjowania łańcucha. W JavaScript uważa się również, że lepiej używać literałów obiektowych i literałów tablicowych:
var arr = []; // not var arr = new Array();
var obj = {}; // not var obj = new Object();
Jeśli naprawdę masz skłonność do łańcucha, możesz go użyć w TypeScript na jeden z dwóch sposobów ...
var str: String = new String("Hello world"); // Uses the JavaScript String object
var str: string = String("Hello World"); // Uses the TypeScript string type