TypeScript - 字符串

原创
admin 4个月前 (08-10) 阅读数 34 #Typescript

TypeScript - 字符串

在TypeScript中,字符串表示字符序列。string类型是TypeScript中的基本数据类型。字符串对于保存可以文本形式表示的数据非常重要。与JavaScript一样,TypeScript也支持字符串基本类型和String对象。

String对象使您能够处理一系列字符。它用许多辅助方法包装了字符串基本数据类型。

您可以在基本字符串上调用方法,因为TypeScript会自动包装字符串基本类型并在包装对象上调用方法。这也同样适用于属性。

创建字符串

TypeScript中的字符串可以作为基本类型从字符串字面量创建,也可以使用String()构造函数作为对象创建。

您可以使用以下语法在TypeScript中创建String对象−

const str = new String(value);

这里str是新创建的String对象,value是一系列字符。

您可以使用单引号、双引号和反引号创建字符串基本类型。

let str1: string = 'a string primitive';
let str2: string = "another string";
let str3: string = `yet another string`;

使用不带new关键字的String()函数也可以创建string基本类型。

let str: string = String(value);
'string'是基本类型,但'String'是包装对象。尽可能使用'string'。

字符串属性

以下是String对象中可用的属性列表及其描述−

序号 属性 & 描述
1. Constructor

返回创建对象的String函数的引用。

2. Length

返回字符串的长度。

3. Prototype

prototype属性允许您向对象添加属性和方法。

字符串方法

以下是String对象中可用的方法列表及其描述−

序号 方法 & 描述
1. charAt()

返回指定索引处的字符。

2. charCodeAt()

返回一个数字,表示给定索引处字符的Unicode值。

3. concat()

组合两个字符串的文本并返回一个新字符串。

4. indexOf()

返回调用String对象中指定值的第一个出现的索引,如果未找到则返回-1。

5. lastIndexOf()

返回调用String对象中指定值的最后一个出现的索引,如果未找到则返回-1。

6. localeCompare()

返回一个数字,指示参考字符串在排序顺序中是在给定字符串之前、之后还是相同。

7.

match()

用于将正则表达式与字符串匹配。

8. replace()

用于查找正则表达式和字符串之间的匹配,并将匹配的子字符串替换为新的子字符串。

9. search()

执行正则表达式和指定字符串之间的匹配搜索。

10. slice()

提取字符串的一部分并返回一个新字符串。

11. split()

通过将字符串分成子字符串,将String对象拆分为字符串数组。

12. substr()

返回从指定位置开始并通过指定数量的字符的字符串中的字符。

13. substring()

返回字符串中两个索引之间的字符。

14. toLocaleLowerCase()

字符串中的字符转换为小写,同时尊重当前的语言环境。

15. toLocaleUpperCase()

字符串中的字符转换为大写,同时尊重当前的语言环境。

16. toLowerCase()

返回转换为小写的调用字符串值。

17. toString()

返回表示指定对象的字符串。

18. toUpperCase()

返回转换为大写的调用字符串值。

19. valueOf()

返回指定对象的基本值。

示例

让我们通过一些TypeScript示例来理解字符串类型。

示例:创建字符串基本类型

在下面的示例中,我们使用单引号、双引号和反引号分别创建基本字符串str1、str2和str3。

let str1: string = 'a string primitive';
console.log(str1);
let str2: string = "another string";
console.log(str2);
let str3: string = `yet another string`;
console.log(str3);

编译后,它将生成以下JavaScript代码。

let str1 = 'a string primitive';
console.log(str1);
let str2 = "another string";
console.log(str2);
let str3 = `yet another string`;
console.log(str3);

上述示例代码的输出如下−

a string primitive
another string
yet another string

示例:创建字符串对象

这里我们使用带new关键字的String()构造函数创建一个String对象。

const email = new String('example133@gmail.com');
console.log(email);
console.log(typeof email);

编译后,它将生成以下JavaScript代码。

const email = new String('example133@gmail.com');
console.log(email);
console.log(typeof email);

上述示例代码的输出如下−

example133@gmail.com
object

示例:连接TypeScript字符串

要连接两个字符串,我们可以使用+运算符。在这里,我们连接两个字符串str1和str2,并在控制台中显示结果。

let str1: string = "Hello ";
let str2: string = "World!";
let str3: string = str1 + str2;
console.log(str3);

编译后,它将生成以下JavaScript代码。

let str1 = "Hello ";
let str2 = "World!";
let str3 = str1 + str2;
console.log(str3);

上述示例代码的输出如下−

Hello World!

示例:使用索引访问字符串元素

在下面的示例中,我们访问第1个和第6个索引处的字符串字符。

let message: string = "Hello World!";
console.log("Character at index 1 is => " + message[1]);
console.log("Character at index 6 is => " + message[6]);

编译后,它将生成以下JavaScript代码。

let message = "Hello World!";
console.log("Character at index 1 is => " + message[1]);
console.log("Character at index 6 is => " + message[6]);

上述示例代码的输出如下−

Character at index 1 is => e
Character at index 6 is => W

示例:TypeScript中的String与string

在TypeScript中,类型'String'是包装对象,类型'string'是基本类型。这两种类型不能相互赋值。

在下面的示例中,我们尝试将字符串对象赋值给string基本类型的变量。

let str: string;
str = new String('shahid');

上述示例代码将显示以下错误−

Type 'String' is not assignable to type 'string'.
  'string' is a primitive, but 'String' is a wrapper object. Prefer using 'string' when possible.

建议始终使用字符串基本类型。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权本站发表,未经许可,不得转载。

作者文章
热门
最新文章
标签列表