var LittleUrl = {
// public method for url encoding
encode : function (string) {
return escape(this._utf8_encode(string));
},
// public method for url decoding
decode : function (string) {
return this._utf8_decode(unescape(string));
},
// private method for UTF-8 encoding
_utf8_encode : function (string) {
string = string.replace(/\r\n/g,"\n");
var utftext = "";
for (var n = 0; n < string.length; n++) {
var c = string.charCodeAt(n);
if (c < 128) {
utftext += String.fromCharCode(c);
}
else if((c > 127) && (c < 2048)) {
utftext += String.fromCharCode((c >> 6) | 192);
utftext += String.fromCharCode((c & 63) | 128);
}
else {
utftext += String.fromCharCode((c >> 12) | 224);
utftext += String.fromCharCode(((c >> 6) & 63) | 128);
utftext += String.fromCharCode((c & 63) | 128);
}
}
return utftext;
},
// private method for UTF-8 decoding
_utf8_decode : function (utftext) {
var string = "";
var i = 0;
var c = c1 = c2 = 0;
while ( i < utftext.length ) {
c = utftext.charCodeAt(i);
if (c < 128) {
string += String.fromCharCode(c);
i++;
}
else if((c > 191) && (c < 224)) {
c2 = utftext.charCodeAt(i+1);
string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
i += 2;
}
else {
c2 = utftext.charCodeAt(i+1);
c3 = utftext.charCodeAt(i+2);
string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
i += 3;
}
}
return string;
}
}
分享到:
相关推荐
在IT行业中,`urlEncode` 和 `urlDecode` 是两个非常关键的概念,它们主要用于处理URL(统一资源定位符)中的特殊字符。理解这两个概念对于网页开发、数据传输以及网络编程至关重要。 `urlEncode` 是一个过程,它将...
这个是 utf-8版本的 js实现 php的 urlencode() 和 urldecode()两个函数的功能。 在传送cookie的时候 在 php端实现 url编码 但要用 js来解码cookie的时候 就出现汉字不能不能识别的问题 这个 js 很好的解决
在深入理解JavaScript实现UrlEncode和UrlDecode函数的过程中,我们需要理解几个关键点:首先,URL编码和解码在Web开发中是一种常见的需求,用于确保URL中的特殊字符被正确传输。其次,JavaScript提供了一些内置的...
文章《用JavaScript实现PHP的urlencode与urldecode函数》就提供了如何在JavaScript中实现这两个函数的方法。 首先,我们来理解urlencode函数的功能和实现原理。urlencode函数的目的是将字符串进行编码,使得该字符...
尽管这个JS版本的`UrlEncode`和`UrlDecode`函数能够处理大多数基本的编码和解码需求,但在实际应用中,开发者应考虑使用JavaScript内置的`encodeURIComponent`和`decodeURIComponent`函数,因为它们遵循更严格的编码...
在编程语言中,如JavaScript、Python、Java等,都有内置的函数来实现UrlEncode和UrlDecode的操作,但这些函数通常只适用于单一语言环境。而独立的工具则提供了跨平台、跨语言的解决方案,无论你使用何种技术栈,都...
而urldecode函数则用于对经过urlencode编码的字符串进行解码。这些函数在日常开发中非常重要,尤其是在创建URL查询字符串或处理表单数据时。 当标准的urlencode函数不能满足特定需求时,我们可以自定义一个类似的...
在Python3中,将中文进行urlencode编码使用函数 urllib.parse.quote(string, safe='/', encoding=None, errors=None) 而将编码后的字符串转为中文,则使用 urllib.parse.unquote(string, encoding='utf-8', errors...
`UrlEncode`和`UrlDecode`函数就是用于处理URL字符串的编码和解码过程。在给定的代码中,作者提供了两个自定义的函数:`ShengUtils.encode`和`ShengUtils.decode`,分别实现了这个功能。 `ShengUtils.encode`函数的...
标题中的“java net unicode / native2ascii / url decode / url encode / UTF8 / js url code”涉及了Java网络编程中的几个关键概念,这些概念在处理字符编码时非常重要。以下是对这些概念的详细解释: 1. **...
在网站开发过程中,使用汉字传输会导致有时URL会出现乱码的问题,可通过urlencode对中文进行编码,然后再解码,避免出现乱码,此函数加密的字符串可通过php的urldecode进行解码
最后,文档中的内容还提供了一段JavaScript代码,分别实现了`UrlEncode`和`UrlDecode`两个函数。这两个函数通过遍历字符串,对于URL中的特殊字符进行编码和解码。这些函数特别考虑了字符的ASCII值,并使用十六进制来...
在ASP(Active Server Pages)环境中,可以使用内置的`Server.URLEncode`函数进行URL编码,而解码则可以使用`Server.URLDecode`函数。`Server.URLDecode("编码后的字符串")`会返回解码后的原始字符串。例如,如果有...
本文将详细探讨JavaScript中的`escape`函数及其C#对应的解码方法`System.Web.HttpUtility.UrlDecode`,同时也会讲解JavaScript中的`escape`、`encodeURI`和`encodeURIComponent`的区别以及它们的解码对应函数。...
这里还提到了两种自定义的解码函数,分别是VBScript的`URLDecode`和JavaScript的`UrlDecode`。虽然它们在网络上有广泛的应用,但是它们可能无法完全处理所有由`encodeURIComponent`产生的编码字符串,因为它们可能不...
相对应地,解码时也有`urldecode`和`rawurldecode`。这种设计可能给开发者带来困扰,因为需要根据实际场景选择合适的编码函数。 解决URL编码问题的关键在于理解各种编码函数的差异,并根据应用需求选择正确的方法。...