高手,您好:
小弟今天新学JavaScript,学到了JavaScript中有单引号和双引号。共同为程序提供对字符串的分隔功能。
小弟看了一篇博客后不禁有一个疑问:
因为在某些场景下,仅仅有双引号对于JavaScript是不够用的。是不能够完美表达出程序的“按照需求分隔字符串”的需要的。所以,产生了单引号。
小弟希望高手点拨:
如果仅仅用单引号和双引号来表达JavaScript程序中的字符串分隔需求,会不会出现:
“单引号和双引号加起来,也不能够完美表达当前字符串分隔的需求”的场景?
是不是还需要“三引号”和“十八引号”?
希望得到高手的点拨!!
感谢高手的过目!!
小弟,在线等。
首先,单引号和双引号可以互相包含,比如:
var s1 = "'单引号'和'双引号'可以互相包含"; //这是允许的但是单引号中直接包含单引号或者双引号中直接包含双引号则是错误的:
要想实现上述目的,可以使用转义:
var s1 = '单引号中包含\'单引号\'可以通过转义符实现'; //这是对的最后,回到你的问题,当出现需要三重以上的引号套用时,里面的引号只要与外层引号相同一律用转义符进行转义即可,js在使用字符串时会自动转为正确的引号:
var s1 = "'\"'\"'\"你能看出这里包含了几重引号?\"'\"'\"'";补充说一句:作为有十多年工作经验的老程序员,我可以负责任地告诉你:实际工作中极少遇到需要三重以上引号套用的情况,如果确实遇到,可以通过多个字符串拼接的方式来解决,因为尽管可以通过转义,但会使代码的阅读性降低,容易造成错误。