Ось приклад, який показує відмінності, що допоможе в поясненні.
var s1 = new String("Avoid newing things where possible");
var s2 = "A string, in TypeScript of type 'string'";
var s3: string;
Stringце тип рядка JavaScript, який можна використовувати для створення нових рядків. Ніхто цього не робить, оскільки в JavaScript літерали вважаються кращими, тому s2у наведеному вище прикладі створюється нова рядок без використання newключового слова та без явного використання Stringоб'єкта.
string це тип рядка TypeScript, який можна використовувати для введення змінних, параметрів та повернених значень.
Додаткові нотатки...
На даний момент (лютий 2013 року) s1і те, s2і дійсне JavaScript. s3дійсний TypeScript.
Використання String. Вам, ймовірно, ніколи не потрібно його використовувати, рядкові літерали загальновизнані як правильний спосіб ініціалізації рядка. У JavaScript також вважається кращим використовувати об’єктні літерали та літерали масиву:
var arr = []; // not var arr = new Array();
var obj = {}; // not var obj = new Object();
Якщо у вас дійсно було схильність до рядка, ви можете використовувати його в TypeScript одним із двох способів ...
var str: String = new String("Hello world"); // Uses the JavaScript String object
var str: string = String("Hello World"); // Uses the TypeScript string type