java中的转义字符,html中的转义字符

形象理解

在java中转义字符都有一定的含义,编译程序的时候会展现出来(就像人的名片一样,一个转义字符都有一个实际的含义)!

" "在java中代表里面包含了一个字符串编译后只剩下字符串,\"则会被编译成 "保留下来

参考资料

https://zhidao.baidu.com/question/428983006.html

概念:通过 \ 来转变后面字母或符号的含义。

举一些例子:

\b:退格

\n:换行

\t:制表符,相当于tab键

\r:回车

\\:表示反斜杠

\':表示单引号

\":表示双引号

转义字符的作用有两个 :第一个是像“<”和“>”这类符号已经用来表示HTML标签,因此就不能直接当做文本中的符号来使用。为了在HTML文档中使用这些符号,就需要定义它的转义字符串。当解释程序遇到这类字符串时就把它解释为真实的字符。在输入转义字符串时,要严格遵守字母大小写的规则。第二个是,有些字符在ASCII字符集中没有定义,因此需要使用转义字符串来表示

http://www.cnblogs.com/gengyulong/archive/2011/05/06/2038573.html

比如在写html的时候,如果想让两个字符之间多几个空格,你拍几个空格,发现浏览器查看只有一个,但你要写几个\b 就没问题了

关于js中单引号(')和双引号(")的使用以及转义的理解

  这几天一直在画页面,身为开发人员的我之所以要画页面是因为当前项目中的页面上所有的东西都是从数据库中取得的,也就是动态的,类似于我们设计自己的个人QQ空间,但因为是大型平台,有自定义业务的概念 ,所有更为复杂,在这就不多说了,我所谓的画页面就是如何把数据结合逻辑,变成HTML,其中遇到的最大的问题就是我今天要说的; 

  一个页面上有一个查询,当然查询的条件,字段类型都是动态的,要根据数据类型生成不同的文本框,如果是varchar2就生成不同的, 如果是date就生成加入时间选择js的,页面上有一个添加新的条件组的按钮,链接到一个js事件,里面就要做关于文本框的判断,我们只看判断部分 如下;

if(tlist[index].value=="date")
    {
     table.rows[t].cells[2].innerHTML='';
    }
    else
    {
     table.rows[t].cells[2].innerHTML='';
    }

  重点为红色部分, 这样写我本来认为是无可厚非的, 但是如果这段代码执行一次,就汇报js错误,错误信息是“语法错误”,js本身为弱语言,单引号和双引号如果是但用的话其实可以混淆的,但如果一起用就要区分,例如上段代码我可以把单引号和双引号对换,也是可以的, 但如果只改变其中一处就需要用+号链接, 意义也不同了,例如

"'b'" 可以 ,但""b""就会出错,需要""+"b"+""

  无法通过单引号双引号的改变来解决问题,我就开始寻求别的思路,我尝试了使用 \ (转义符)来解决,如下

οnclick="WdatePicker({dateFmt:\"yyyy-MM-dd\"})"

  但还是不行,个人认为原因是js还是在html的作用中,而不是java,所以我想到了使用"来解决,

table.rows[t].cells[2].innerHTML='';

 

  问题解决了, 我生平第一次感觉到了这个东西的神奇, 原来只使用过  ,看来在程序的世界中,每一样东西都有他存在的意义, 即使在我们不得已淘汰他们的时候 ,也要知道他们有意义的部分,因为这些富有意义的东西可能在某时某刻给我们极大地帮助,而且替代他们的产品未必可以将他们的优点全部传承,人亦如此 。

你可能感兴趣的:(WEB基础,java,html)