JavaScript 语言中一个,在 TypeScript 中我们也可以通过单引号 '' 或者双引号 "" 来声明一个字符串类型的变量。

let str1:string = 'xkd';
let str2:string = "侠课岛";
console.log(str1);
console.log(str2);

这其实和 JavaScript 中的字符串类型差不多,TypeScript 中。

字符串新特性

TypeScript 中的字符串类型和 JavaScript 中的字符串基本类似,但是相较于 JavaScriptTypeScript 中的字符串类型新增了一些新的特性。TypeScript 中字符串的新特性有如下三种:

  • 多行字符串。
  • 字符串模板。
  • 自动拆分字符串。

多行字符串

首先是多行字符串,传统的 JavaScript 字符串换行需要使用 + 进行拼接,否则会报错。

我们来下面这段看 JavaScript 代码:

var str = "aaa" + 
"bbb";
console.log(str);  // aaabbb

将其中的 + 去掉,代码会报错:

var str = "aaa
bbb";
console.log(str);  // SyntaxError: Invalid or unexpected token

而在 TypeScript 中则不需要使用 + 拼接,我们可以使用 `` 双撇号(键盘左上角的那个按键)将字符串包起来,这样就可以直接实现换行。将上面的代码改写成 TypeScript 代码:

let str = `aaa
bbb`;
console.log(str);

我们在终端执行 tsc test.ts 命令,将上述 TypeScript 代码编译成 JavaScript 代码,会自动生成一个换行符\n

var str = "aaa\nbbb";
console.log(str);

然后执行这段代码,输出结果如下:

字符串模板

TypeScript 中可以在多行字符串里引入一个表达式插入变量或一个方法的调用。

看下面这段 JavaScript 代码:

var username = "侠课岛";
var getName = function (){
  return "大侠";
console.log("你好:" + username);
console.log("你好:" + getName());

我们可以通过字符串模板,将这段代码改写成如下所示 TypeScript 代码:

let username:string = "侠课岛";
let getName = function (){
  return "大侠";
console.log(`你好:${username}`);
console.log(`你好:${getName()}`);

自动拆分字符串

当我们用字符串模板去调用一个方法时,字符串模板表达式中的值就会自动赋值给被调用方法中的参数。

我们来看下面这段代码:

function test(template, name, age) {
    console.log(template);  
    console.log(name);      // name就是${myName}
    console.log(age);       // age就是${getAge()}
  var myName = "Iven";
  var getAge = function () {
    return 22;
// 通过字符串模板的方式,可以实现字符串的拆分
test`我叫 ${myName},今年 ${getAge()} 岁了`;

将上述代码编译成 JavaScript 代码:

var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
    if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
    return cooked;
function test(template, name, age) {
    console.log(template);
    console.log(name); // name就是${myName}
    console.log(age);  // age就是${getAge()}
var myName = "Iven";
var getAge = function () {
    return 22;
// 通过字符串模板的方式,可以实现字符串的拆分
test(__makeTemplateObject(["\u6211\u53EB ", ",\u4ECA\u5E74 ", " \u5C81\u4E86"], ["\u6211\u53EB ", ",\u4ECA\u5E74 ", " \u5C81\u4E86"]), myName, getAge());
[ '我叫 ', ',今年 ', ' 岁了' ]
打字稿> = 2.4.1
如何使用此套件
该软件包导出2个函数。 一个是enumerate ,它在TypeScript代码中用于枚举字符串文字类型的并集成员,而另一个是TypeScript自定义转换器,用于正确地编译enumerate函数。
如何使用enumerate
 import { enumerate } from 'ts-transformer-enumerate' ;
type Colors = 'green' | 'yellow' | 'red' ;
const Colors = enumerate < Colors> ( ) ;
console . log ( Colors . green ) ; // 'green'
console . log ( Colors . yell
import type { JsonType } from "@dqn/json-type" ;
type Obj = JsonType < '{ "foo": "aaa", "bar": 12, "piyo": { "nyaa": [null, true] } }' > ;
// type Obj = {
//   foo: "aaa";
//   bar: 12;
//   piyo: {
//     nyaa: [null, true];
//   };
// };
麻省理工学院
                                    字符串的操作是算法题当中经常碰见的一类题目,主要考察对string类型的处理和运用。
在处理字符串的时候,我们经常会碰到求字符串长度、匹配子字符串、替换字符串内容、连接字符串、提取字符串字符等操作,那么调用一些简单好用的api可以让工作事半功倍,在TypeScript中,这些api其实和JavaScript的相同,下面整理一些比较常用的api:
简单的API,可将TypeScript代码字符串编译为JavaScript。 就这样!
typescript-simple仅提供一种接受TypeScript代码字符串并返回JavaScript代码的方法。
 TypeScript v1.4没有简单的TS字符串到JS字符串API
 TypeScript v1.5具有 ,但无法生成源映射
TypeScript v1.6 +具有带有源映射的 ,但它始终忽略类型检查
typescript-simple v8.xx使用TypeScript v2.2-v2.9
 typescript-simple v7.xx使用TypeScript v2.1
 typescript-simple v6.xx使用TypeScript v2.0
 typescript-simple v5.xx使用TypeScript v1.8
打开命令提示符,然后键入:sudo npm install -g typescript(要在您的计算机中全局安装TypeScript)
 编译TypeScript文件:tsc app.ts
 类型运算符
在TypeScript中,您一直都在使用字符串或数字之类的类型。 重要说明:它是字符串和数字(​​等),不是字符串,数字等。(TypeScript中的核心基本类型都是小写!)
 核心类型
NUMBER:1、5.3,-10(所有数字,整数或浮点数之间没有区别)
 STRING:“嗨”,“嗨”, Hi (所有文本值)
 BOOLEAN:正确,错误(仅这两个,没有真实值或脆弱值)
 对象:{age:30}
 阵列:[1、2、3]
 TUPLE:[1,2](固定长度数组和固定类型)
 枚举:枚举{NEW,OLD}(自动枚举的全局常量标识符)
 任何; (尽可能避免,它剥夺了打字稿带给我们的
例如,您可以增加lodash get :
 import { get as _get } from 'lodash' ;
function get < ObjecType> ( obj : ObjecType , path : Path , orElse ?: OrElse ) : ResolveType < ObjecType> {
  return _get ( obj , path , orElse ) ;
get ( obj , 'deeplvl1[1].deeplvl2.deeplvl
                                    与 JavaScript 一样,TypeScript 使用双引号 (")、单引号 (') 和反引号 (`) 来包围字符串文字。TypeScript 还支持使用反引号 (`) 包围字符的模板字符串。在今天的教程中,我们将了解 TypeScript 字符串数据类型。在 TypeScript 中,所有字符串都获取字符串类型。模板字符串允许我们创建多行字符串并提供字符串插值功能。
                                    TSTS基础介绍TypeScript基础语法TypeScript程序由以下部分组成:tsc常用编译参数语法TypeScript和面向对象基础类型Any类型undefinedTypeScript变量声明类型断言变量作用域TypeScript运算符TypeScript条件语句TypeScript循环TypeScript函数可选参数、默认参数和剩余参数TypeScript接口接口继承TypeScript类类的继承继承类的方法重写static关键字类和接口TypeScript对象TypeScript类型模板Type
命名规则:
只能出现数字、字母、下划线、$、且不能以数字开头,可采用驼峰命名法。运算符(选取几个例子):算数运算符:,赋值运算符:,关系运算符:,位运算符:,逻辑运算符:,三元运算符:,类型运算符:,字符串运算符:;2.函数TS是由JS发展过来的,在众多语法方面和JS大致相同,因此:函数的定义,大致的格式如下:
函数的调用,大致格式如下:
在调用函数时,可以传递参数,用隔开;可选参数,可用代替,可选
                                    英文 | https://www.javascripttutorial.net翻译 | 杨小爱在今天的教程中,我们将了解 TypeScript 字符串数据类型。与 JavaScript 一样,TypeScript 使用双引号 (") 或单引号 (') 来包围字符串文字:let firstName: string = 'John';
let title: string = ...
 var value = 1;          //number类型
 var value;              //any类型
 var value : number = 1; //number类型
String (字符串