我是靠谱客的博主 文静豌豆,最近开发中收集的这篇文章主要介绍小程序之解码,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

  1. encodeURIComponent() 函数
  • 可把字符串作为 URI 组件进行编码,该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ’ ( ) 。或其他字符(比如 :;/?????&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的
  • encodeURIComponent(uri):uri,必需。一个字符串,含有 URI 组件或其他要编码的文本
<script>
var uri="http://w3cschool.cc/my test.php?name=ståle&car=saab";
document.write(encodeURIComponent(uri));
</script>

【输出】
http%3A%2F%2Fw3cschool.cc%2Fmy%20test.php%3Fname%3Dst%C3%A5le%26car%3Dsaab
  1. decodeURIComponent() 函数
  • 可对 encodeURIComponent() 函数编码的 URI 进行解码
  • decodeURIComponent(URIstring):URIstring,必需,一个字符串,含有编码 URI 组件或其他要解码的文本
  • 返回值:URIstring 的副本,其中的十六进制转义序列将被它们表示的字符替换
<script type="text/javascript">
var test1="http://www.w3school.com.cn/My first/"
document.write(encodeURIComponent(test1)+ "<br />")
document.write(decodeURIComponent(test1))
</script>

【输出】
http%3A%2F%2Fwww.w3school.com.cn%2FMy%20first%2F
http://www.w3school.com.cn/My first/
  1. exec() 方法
  • 用于检索字符串中的正则表达式的匹配

  • RegExpObject.exec(string):string,必需,要检索的字符串

  • 返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null

  • 如果 exec() 找到了匹配的文本,则返回一个结果数组。否则,返回 null。此数组的第 0 个元素是与正则表达式相匹配的文本,第 1 个元素是与 RegExpObject 的第 1 个子表达式相匹配的文本(如果有的话),第 2 个元素是与 RegExpObject 的第 2 个子表达式相匹配的文本(如果有的话),以此类推。除了数组元素和 length 属性之外,exec() 方法还返回两个属性。index 属性声明的是匹配文本的第一个字符的位置。input 属性则存放的是被检索的字符串 string。我们可以看得出,在调用非全局的 RegExp 对象的 exec() 方法时,返回的数组与调用方法 String.match() 返回的数组是相同的。但是,当 RegExpObject 是一个全局正则表达式时,exec() 的行为就稍微复杂一些。它会在 RegExpObject 的 lastIndex 属性指定的字符处开始检索字符串 string。当 exec() 找到了与表达式相匹配的文本时,在匹配后,它将把 RegExpObject 的 lastIndex 属性设置为匹配文本的最后一个字符的下一个位置。这就是说,您可以通过反复调用 exec() 方法来遍历字符串中的所有匹配文本。当 exec() 再也找不到匹配的文本时,它将返回 null,并把 lastIndex 属性重置为 0

  • 正则表达式30分钟入门教程

  • /* scene解码*/ scene_decode(e) { if (e === undefined) return {}; // encodeURIComponent() 函数:可把字符串作为 URI 组件进行编码 // decodeURIComponent()函数:可对 encodeURIComponent() 函数编码的 URI 进行解码 let scene = decodeURIComponent(e), params = scene.split(','), data = {}; for (let i in params) { var val = params[i].split(':'); val.length > 0 && val[0] && (data[val[0]] = val[1] || null) } return data; },

最后

以上就是文静豌豆为你收集整理的小程序之解码的全部内容,希望文章能够帮你解决小程序之解码所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部