版权声明:本文为博主原创文章,未经博主允许不得转载。更多学习资料请访问我爱科技论坛:www.52tech.tech https://blog.csdn.net/m0_37981569/article/details/81105949

如果是想把本地的一个字符串串存到服务器,再次取出来的还是文本的话,就需要这个文本字符串的转义;

 /*** 对一个字符串的转义* @param str* @return {*}*/function escapeHTML(str) {return str.replace(/$/g, '&amp;')     // 结尾的字符用&amp替换.replace(/\</g, '&lt;')          // < 用&lt替换.replace(/\>/g, '&gt;')          // > 用&gt替换.replace(/\'/g, ''')         // ' 用&#39替换.replace(/\"/g, '&quot;');      // " 用&quot替换}/*** 对一个字符串的反转义* @param str* @return {*}*/function unscapeHTML(str) {// 查找所有的< > & " ' 字符,并替换掉return str.replace(/&lt;/g, '<').replace(/&gt;/g, '>').replace(/'/g, '\'').replace(/&quot;/g, '\"').replace(/&amp;/g, '')// String.fromCharCode() 静态方法根据指定的 Unicode 编码中的序号值来返回一个字符串。String.fromCharCode(65,66,67) “ABC”.replace(/&#(\d+)/g, function ($0, $1) {//parseInt() 函数将给定的字符串以指定基数(radix/base)解析成为整数。就是 你想把string当成radix进制数解析成10进制return String.fromCharCode(parseInt($1, 10));});}

测试代码如下:

// 转义和反转义的功能测试var tagText = "<p><b>123&456</b></p>";// 如果直接打印输出的话,就是一个字符串console.log(tagText);   // <p><b>123&456</b></p>res = escapeHTML(tagText);console.log(res);  // &ltp&gt&ltb&gt123&456&lt/b&gt&lt/p&gt&amp// 如果把一个字符串转义为实体之后,就不会正常在页面中显示出来内容,只会显示的是一个字符串document.body.innerHTML = res;  // 会显示的是一个字符串,&ltp&gt&ltb&gt123&456&lt/b&gt&lt/p&gt&amp, 但是浏览器也会自动将实体转换解析// 如果是一个字符串的话,就会直接在网页中显示出来(按照HTML进行解析)document.body.innerHTML = tagText;  // 相当是设置了一段HTML代码// 对字符反转义之后的结果res = unscapeHTML(res);  // <p><b>123&456</b></p>console.log(res);           // 又恢复到最初始的状态

【JavaScript框架封装】JavaScript中的文本字符串的转义和反转义的实现相关推荐

  1. Excel中拼接文本字符串-CONCATENATE函数

    Excel中拼接文本字符串-CONCATENATE函数 CONCATENATE函数 函数简介 函数语法 函数说明 示例 CONCATENATE函数 函数简介 CONCATENATE 函数用于Excel ...

  2. java中jq转移符,使用StringEscapeUtils对Java中特殊字符进行转义和反转义

    https://blog.csdn.net/zdx1515888659/article/details/84966214 Java中转义字符反斜杠 \ 的代替方法 | repalceAll 内涵解析 ...

  3. php 转义字符处理,PHP转义与反转义字符串函数详解

    在PHP语言中,字符串的转义与反转义是可以使用PHP提供的自有函数addslashes()函数和stripslashes()函数来实现. 1. addslashes()函数 addslashes() ...

  4. Java - 利用StringEscapeUtils对字符串进行各种转义与反转义

    来自:http://blog.csdn.net/chenleixing/article/details/43456987 --------------------------------------- ...

  5. 【JavaScript框架封装】自己动手封装一个涵盖JQuery基本功能的框架及核心源码分享(单文件版本)...

    整个封装过程及阅读JQuery源码的过程基本上持续了一个月吧,最终实现了一个大概30%的JQuery功能的框架版本,但是里面涉及的知识点也是非常多的,总共的代码加上相关的注释大概在3000行左右吧,但 ...

  6. 【JavaScript框架封装】自己动手封装一个涵盖JQuery基本功能的框架及核心源码分享(单文件版本)

    整个封装过程及阅读JQuery源码的过程基本上持续了一个月吧,最终实现了一个大概30%的JQuery功能的框架版本,但是里面涉及的知识点也是非常多的,总共的代码加上相关的注释大概在3000行左右吧,但 ...

  7. 【JavaScript框架封装】实现一个类似于JQuery的缓存框架的封装

    // 缓存框架 (function (xframe) {/*** 实现了缓存框架的临时存储功能(内存存储)* @type {{data: Array, get: (function(*): *), a ...

  8. JavaScript - 移除数组中的空字符串元素

    移除数组中的空字符串元素 使用 filter 方法对数组进行拷贝,删除空字符串元素,保留其他元素(第 22 ~ 24 行): <!DOCTYPE html> <html>< ...

  9. 【JavaScript框架封装】使用Prototype给Array,String,Function对象的方法扩充

    版权声明:本文为博主原创文章,未经博主允许不得转载.更多学习资料请访问我爱科技论坛:www.52tech.tech https://blog.csdn.net/m0_37981569/article/ ...

最新文章

  1. MySQL技术内幕 InnoDB存储引擎 之 InnoDB体系架构
  2. F# 4.0于全平台发布
  3. 充电类型一二次检测过程及充电类型
  4. jmeter 核心_初识性能测试工具JMeter
  5. oracle 客户端监听文件配置
  6. java利用模板发送邮件_使用JavaMail实现发送模板邮件以及保存到发件箱
  7. gdb 调试带参数的程序-转
  8. crm2011创建批量删除作业
  9. php dsn port,PHP的InfluxDB客户端库使用
  10. 用JAVA写一个视频播放器
  11. 测试 软通动力软件测试机试_软通动力2020春招软件测试笔试题以及答案
  12. MIT.6.00.1X --Week 3 Lecture 5 -- 'Divid and conqer' algorithm 分而治之
  13. 云计算中存储继承知识
  14. 第四篇:服务发现机制
  15. Axure高级功能(变量、动态面板[轮播图]、中继器)
  16. AWS大数据三种经典玩法
  17. 为何非得选择旧金山测试?通用Cruise讲述无人车炼成记
  18. jenkins远程执行脚本不退出Exec in pty
  19. 利用JavaScript计算圆的面积
  20. 如何对接股票交易接口?

热门文章

  1. Active Directory管理之十一:升级Active Directory(上)
  2. mysql 客户端提示“Cannot proceed because system tabl...
  3. CLR via C#(第3版):.net中的定时器整理总结
  4. 贝叶斯网络工具Hugin api的使用
  5. 已知机器人阿木木_LOL殇之机器人 阿木木皮肤
  6. java大整数类减1,自己写Java大整数《1》表示和加减
  7. 嵌入式自学多久可以找工作?应届生找嵌入式工作难吗?
  8. 用java建一个类_利用JAVA创建一个类。
  9. HDU3932(最小圆覆盖问题)
  10. POJ2492 A Bug s Life 题解