字符串(Strings)
String对象允许您使用一系列字符。 与大多数编程语言一样,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);
字符串连接 (String Concatenation)
我们可以使用“+”符号连接两个字符串,如下所示。
new_string = "Hello how are you "+"Welcome to xnip"
console.log new_String
在编译时,它将生成以下JavaScript代码。
// Generated by CoffeeScript 1.10.0
(function() {
var new_string;
new_string = "Hello how are you " + "Welcome to xnip";
console.log(new_String);
}).call(this);
如果执行上面的示例,则可以观察到连接的String,如下所示。
Hello how are you Welcome to xnip
字符串插值
CoffeeScript还提供了一个称为String interpolation的功能,用于在stings中包含变量。 CoffeeScript的这一功能灵感来自Ruby语言。
字符串插值使用双引号"" ,散列标记#和一对花括号{ } 。 String以双引号声明,并且要插入的变量包含在花括号中,花括号以哈希标记作为前缀,如下所示。
name = "Raju"
age = 26
message =<b>"Hello #{name} your age is #{age}"</b>
console.log message
在编译上面的示例时,它会生成以下JavaScript。 在这里,您可以观察到使用+符号将字符串插值转换为正常连接。
// Generated by CoffeeScript 1.10.0
(function() {
var age, message, name;
name = "Raju";
age = 26;
<b>message = "Hello " + name + " your age is " + age;</b>
console.log(message);
}).call(this);
如果您执行上面的CoffeeScript代码,它会为您提供以下输出。
Hello Raju your age is 26
仅当字符串包含在双引号" "之间时,才会插入作为#{variable}传递的#{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 xnip
Have a nice day."
console.log my_string
它生成以下输出。
hello how are you Welcome to xnip Have a nice day.
JavaScript字符串对象
JavaScript的String对象允许您使用一系列字符。 此对象为您提供了许多方法来对Stings执行各种操作。
由于我们可以在CoffeeScript代码中使用JavaScript库,因此我们可以在CoffeeScript程序中使用所有这些方法。
字符串方法
以下是JavaScript的String对象的方法列表。 单击这些方法的名称以获取演示它们在CoffeeScript中的用法的示例。
S.No. | 方法和描述 |
---|---|
1 | charAt() 返回指定索引处的字符。 |
2 | charCodeAt() 返回一个数字,指示给定索引处字符的Unicode值。 |
3 | concat() 合并两个字符串的文本并返回一个新字符串。 |
4 | indexOf() 返回第一次出现的指定值的调用String对象中的索引,如果未找到,则返回-1。 |
5 | lastIndexOf() 返回最后一次出现的指定值的调用String对象中的索引,如果未找到,则返回-1。 |
6 | localeCompare() 返回一个数字,指示引用字符串是在排序顺序之前还是之后出现,或者与排序顺序中的给定字符串相同。 |
7 | match() 用于将正则表达式与字符串匹配。 |
8 | search() 执行搜索正则表达式与指定字符串之间的匹配项。 |
9 | slice() 提取字符串的一部分并返回一个新字符串。 |
10 | split() 通过将字符串分隔为子字符串将String对象拆分为字符串数组。 |
11 | substr() 返回从指定位置开始通过指定字符数的字符串中的字符。 |
12 | toLocaleLowerCase() 在尊重当前区域设置的同时,字符串中的字符将转换为小写字母。 |
13 | toLocaleUpperCase() 在尊重当前语言环境的同时,字符串中的字符将转换为大写字母。 |
14 | toLowerCase() 返回转换为小写的调用字符串值。 |
15 | toUpperCase() 返回转换为大写的调用字符串值。 |