CoffeeScript - 字符串



字符串对象允许你操作一系列字符。与大多数编程语言一样,CoffeeScript 中的字符串使用引号声明,例如:

my_string = "Hello how are you"
console.log my_string

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

// Generated by CoffeeScript 1.10.0
(function() {
  var my_string;

  my_string = "Hello how are you";

  console.log(my_string);

}).call(this);

字符串连接

我们可以使用 "+" 符号连接两个字符串,如下所示。

new_string = "Hello how are you "+"Welcome to Tutorialspoint"
console.log new_String

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

// Generated by CoffeeScript 1.10.0
(function() {
  var new_string;

  new_string = "Hello how are you " + "Welcome to Tutorialspoint";

  console.log(new_String);

}).call(this);

如果执行上面的示例,你可以看到连接后的字符串,如下所示。

Hello how are you Welcome to Tutorialspoint

字符串插值

CoffeeScript 还提供了一个称为 **字符串插值** 的特性,用于在字符串中包含变量。CoffeeScript 的此特性受到 Ruby 语言的启发。

字符串插值使用双引号 **""**、井号 **#** 和一对花括号 **{ }** 进行。字符串用双引号声明,要插值的变量用花括号括起来,并在前面加上井号,如下所示。

name = "Raju"
age = 26
message ="Hello #{name} your age is #{age}"
console.log message

编译上述示例后,将生成以下 JavaScript 代码。在这里你可以看到字符串插值被转换为使用 **+** 符号的普通连接。

// Generated by CoffeeScript 1.10.0
(function() {
  var age, message, name;

  name = "Raju";

  age = 26;

  message = "Hello " + name + " your age is " + age;

  console.log(message);

}).call(this);

如果执行上述 CoffeeScript 代码,将得到以下输出。

Hello Raju your age is 26

只有当字符串用双引号 **" "** 括起来时,作为 **#{variable}** 传递的变量才会被插值。使用单引号 **' '** 代替双引号会按原样输出该行,而不会进行插值。请考虑以下示例。

name = "Raju"
age = 26
message ='Hello #{name} your age is #{age}'
console.log message

如果在插值中使用单引号而不是双引号,你将得到以下输出。

Hello #{name} your age is #{age}

CoffeeScript 允许在字符串中使用多行,而无需连接它们,如下所示。

my_string = "hello how are you
Welcome to tutorialspoint
Have a nice day."
console.log my_string

它生成以下输出。

hello how are you Welcome to tutorialspoint Have a nice day.

JavaScript 字符串对象

JavaScript 的字符串对象允许你操作一系列字符。此对象提供许多方法来对字符串执行各种操作。

由于我们可以在 CoffeeScript 代码中使用 JavaScript 库,因此我们可以在 CoffeeScript 程序中使用所有这些方法。

字符串方法

以下是 JavaScript 字符串对象的各种方法列表。点击这些方法的名称以获取演示它们在 CoffeeScript 中用法的示例。

序号 方法和描述
1 charAt()

返回指定索引处的字符。

2 charCodeAt()

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

3 concat()

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

4 indexOf()

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

5 lastIndexOf()

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

6 localeCompare()

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

7 match()

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

8 search()

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

9 slice()

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

10 split()

通过将字符串分割成子字符串来将字符串对象分割成字符串数组。

11 substr()

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

12 toLocaleLowerCase()

字符串中的字符转换为小写,同时遵守当前区域设置。

13 toLocaleUpperCase()

字符串中的字符转换为大写,同时遵守当前区域设置。

14 toLowerCase()

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

15 toUpperCase()

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

广告