ActionScript中单引号和双引号字符串的区别

时间:2010-01-15 17:29:20

标签: actionscript-3 string

ActionScript中的单引号和双引号字符串有什么区别吗?

5 个答案:

答案 0 :(得分:21)

您可以将其用作字符串的分隔符。但是它们不可互换,即你不能用撇号开始一个字符串并用引号结束它。

唯一的区别是你需要逃脱哪些角色。在用引号分隔的字符串中,你需要转义引号而不是撇号,反之亦然。

将文本He said "It's all right" and laughed.放入可以使用的字符串中:

"He said \"It's all right\" and laughed."

或:

'He said "It\'s all right" and laughed.'

答案 1 :(得分:4)

没有。

// *必填 - 至少15个字符

答案 2 :(得分:3)

没有区别。

这是ActionScript: The definitive Guide

String是用于文本数据(字母,标点符号和其他字符)的数据类型。字符串文字是用引号括起来的任何字符组合:

    "asdfksldfsdfeoif"  // A frustrated string
    "greetings"         // A friendly string
    "moock@moock.org"   // A self-promotional string
    "123"               // It may look like a number, but it's a string
    'singles'           // Single quotes are acceptable too

答案 3 :(得分:2)

不,除了在双引号字符串中包含单引号更容易,反之亦然。

答案 4 :(得分:0)

在Actionscript本身中,除了没有转义字符的未使用分隔符的可用性之外,没有差异。

在Flash Builder中,用于Flex的常见AS3创作IDE,如果这些事件类型使用单引号定义,则Event.COMPLETE will not work上的兼容事件类型(例如addEventListener)自动完成双引号。

假设您有一个类标记它,并使用Flex元标记调度特定事件类型。

[Event(name="foo",type="pkg.events.Constants")]
class SomethingThatDispatchesFoo extends EventDispatcher {

如果您的事件常量类的结构如下:

class Constants {
  public static const FOO:String = 'foo';
}

然后自动填充会为您提供'foo'。但是,如果它的结构如下:

class Constants {
  public static const FOO:String = "foo";
}

自动填充功能会为您提供Constants.FOO