你应该在 TS 中为字符串使用单引号还是双引号
Should you use Single or Double quotes for Strings in TS
对于是否应该为 TypeScript 字符串使用单引号或双引号,没有官方标准。
我从事的大多数项目都使用单引号,除非必须转义字符串中的单引号字符,在这种情况下使用双引号。
// 👇️ default const str1 = 'single quotes'; // 👇️ when string contains single quote const str2 = "It's him"; const person = 'Bobby Hadz'; // 👇️ backticks when interpolating variables const str3 = `hello ${person}`;
该示例演示了我何时会在 TypeScript 字符串中使用单引号和双引号。
交替引号比用反斜杠转义引号更好
如果字符串包含单引号,将其用双引号括起来比使用反斜杠字符转义引号要容易得多/
。
const str1 = "It's him"; const str2 = 'It\'s him'; const str3 = `It's him` // 👈️ can also use backticks
第一个字符串更容易阅读。
第三个例子使用反引号“。但是当我在字符串中插入一个变量或者当我有一个多行字符串时,我主要使用反引号。
TypeScript 贡献者指南
应该注意的是,有些人链接到
TypeScript 贡献者指南,其中对字符串使用双引号。
这是他们在 TypeScript 的代码库中使用的,而不是他们建议您在项目中使用的。
因此,他们更容易保持一致,而不是要求人们根据编程语言在单引号和双引号之间切换。
为什么我更喜欢使用单引号
我更喜欢单引号的主要原因是——我不必shift
在每次声明字符串时都使用键。
由于大多数字符串不包含单引号,因此我不必经常使用双引号。
对于多行字符串,我使用反引号。
// 👇️ (better) const longString = ` roses are red, violets are blue `; // 👇️ (hard to read) const longString2 = 'roses are red\nviolets are blue';
第一个示例使用
模板文字,比第二个更容易阅读。
有些人更喜欢对字符串使用双引号,因为 JSON 只使用双引号。
我发现自己手动编写 JSON 不像我发现自己声明字符串那样频繁,所以这不适用于我。
I also find it much easier to look at empty strings that were declared using
single quotes.
const str1 = ''; const str2 = "";
Maybe I’ve gotten used to seeing single quoted strings over the years, but the
second string from the example looks busy and unnecessary.
# Additional Resources
You can learn more about the related topics by checking out the following
tutorials:
- How to convert a String to Enum in TypeScript
- Convert a String to a Number in TypeScript
- Check if a String is in Union type in TypeScript
- Declare Array of Numbers, Strings or Booleans in TypeScript
- Extend String.prototype and other prototypes in TypeScript
- Using {[key:string]: string} and {[key:string]: any} in TS
- 替换 TypeScript 中所有出现的字符串