微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JavaScript函数参数中的“ \\\\”是什么意思?

如何解决JavaScript函数参数中的“ \\\\”是什么意思?

| 我被要求记录一些代码。一些javascript函数传递参数,例如
onclick=\'showhide(<%#String.Format(\"\\\"#customer{0}\\\"\",Container.DataItemIndex) %>);\'
代码中\“ \\\”的目的是什么? 他们是某些特殊的转义字符吗?如果删除它们,代码会失败吗?

解决方法

它们用“转义”引号引起来,因此可以将它们包含在字符串中。否则,它们将与字符串的开始/结束引号引起混淆。 http://en.wikipedia.org/wiki/Escape_character,这看起来不像(纯)JavaScript,而是像其他一些产生JavaScript代码的语言(可能是ASP.NET): 假设“ 1”是语言代码,可将包含的语句的结果插入文本,这意味着
String.Format(\"\\\"#customer{0}\\\"\",Container.DataItemIndex)
将被写在函数调用的右括号和右括号之间。 这意味着转义字符“ 3”在此处不在JavaScript中使用,而是在宿主语言(可能是C#或VB.NET)中使用。含义可能与JavaScript中的相同,不过::它转义了双引号,以使其可以在字符串文字中表示。,代码中\“ \\\”的目的是什么? 在我看来就像是转义序列。假设这是C#代码,则代码中的字符串为:
\"\\\"#customer{0}\\\"\"
编译器解释为:
\"#customer{0}\"
(这包括双引号) 当这是response.write时,输出将变为:
onclick=\'showhide(\"#customer_1234\");\'
,是的,它是一个转义字符。 在这种情况下,它转义了\“字符。,这是上面代码中使用的转义序列。 用字符串
\\\"
编写时,等效于
\"
。即
<%#String.Format(\"\\\"#customer{0}\\\"\",Container.DataItemIndex) %>
如果
DataItemIndex
9
将会呈现出类似的结果
\"#customer9\"

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。