`
xiaodi667
  • 浏览: 65617 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JavaScript实现UrlEncode,UrlDecode(兼容FF,IE等)

    博客分类:
  • js
 
阅读更多
/** 
* 
*  URL encode / decode 
*  http://www.webtoolkit.info/ 
* 注意,使用方法 Url.encode(string) 得到的是UTF-8编码的数据 
**/ 
 
var Url = { 
 
        // 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; 
        } 
 
}
分享到:
评论

相关推荐

    urlencode urldecode实现

    同时,实现 `urlencode` 和 `urldecode` 的具体算法时,需要注意字符编码规则,确保所有可能的URL特殊字符都被正确处理。 总结来说,`urlencode` 和 `urldecode` 在网络编程中扮演着重要角色,特别是在处理URL参数...

    用JavaScript实现UrlEncode和UrlDecode的脚本代码

    在深入理解JavaScript实现UrlEncode和UrlDecode函数的过程中,我们需要理解几个关键点:首先,URL编码和解码在Web开发中是一种常见的需求,用于确保URL中的特殊字符被正确传输。其次,JavaScript提供了一些内置的...

    用JavaScript实现PHP的urldecode/urldecode函数

    这个是 utf-8版本的 js实现 php的 urlencode() 和 urldecode()两个函数的功能。 在传送cookie的时候 在 php端实现 url编码 但要用 js来解码cookie的时候 就出现汉字不能不能识别的问题 这个 js 很好的解决

    urlEncode or urlDecode

    在IT行业中,`urlEncode` 和 `urlDecode` 是两个非常关键的概念,它们主要用于处理URL(统一资源定位符)中的特殊字符。理解这两个概念对于网页开发、数据传输以及网络编程至关重要。 `urlEncode` 是一个过程,它将...

    PB 进制转换 url编码 urlencode urldecode 数组排序

    自己写的,可能有bug,请大家一块学习 环境为PB12 函数(及参数) 作用 arraysort 对一维数组进行排序 ...urldecode 将指定字符串以进行指定字符集url解码 urlencode 将指定字符串以进行指定字符集url编码 涨价了,哈哈

    网络传输文本,urlEncode和decode的实现。

    在Visual Studio 2005环境下,我们可以使用内置的.NET Framework类库来实现`urlEncode`和`urlDecode`功能。`System.Web`命名空间下的`HttpUtility`类提供了这两个方法: 1. `HttpUtility.UrlEncode`: 这个静态方法...

    用JavaScript实现PHP的urlencode与urldecode函数

    总之,该文章深入讲解了JavaScript中实现PHP风格urlencode和urldecode方法的技术细节,使开发者能够在JavaScript环境中处理需要编码的URL参数,保证Web应用的兼容性和数据传输的准确性。对于学习和应用JavaScript...

    Python3中urlencode和urldecode的用法详解

    今天小编就为大家分享一篇Python3中urlencode和urldecode的用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    ASP中实现的URLEncode、URLDecode自定义函数__1.docx

    本文主要讨论如何在ASP中实现URLEncode和URLDecode这两个功能,以便正确地处理URL中的特殊字符和编码问题。 首先,URL编码(URLEncode)是为了在URL中传递非ASCII字符或特殊字符时避免产生错误。URL中不能包含某些...

    UrlEncodeUrlDecodeUrl解码Url编码工具

    相反,UrlDecode则是UrlEncode的逆过程,它将URL中编码的字符还原为原始形式。当接收到一个编码过的URL后,UrlDecode会识别并替换所有形如"%xy"的序列,将其转化为对应的ASCII字符。 UrlEncode和UrlDecode在实际...

    用C++来实现UrlEncode

    此实现不仅遵循了URL编码的基本准则,还展示了C++语言的强大功能,如类型定义、函数内联、字符串操作等。这对于开发人员来说,是一个学习和实践字符串处理及编码技术的优秀案例。在实际应用中,这种自定义的URL编码...

    易语言URL编解码

    URL编解码主要包括两个部分:URLEncode和URLDecode。URLEncode是将URL中的非字母数字字符转换为ASCII码的百分号编码形式,如空格通常会被转换为"%20"。这样做的原因是URL中不能包含某些字符,如空格、引号等,它们...

    UrlEncodeDecode解码编码工具(双向)

    在编程语言中,如JavaScript、Python、Java等,都有内置的函数来实现UrlEncode和UrlDecode的操作,但这些函数通常只适用于单一语言环境。而独立的工具则提供了跨平台、跨语言的解决方案,无论你使用何种技术栈,都...

    php自定义urlencode,urldecode函数实例

    总结来说,自定义urlencode和urldecode函数可以帮助开发者解决在特定场景下遇到的问题,使得URL编码和解码过程更符合项目的实际需求。通过本文提供的代码实例,我们可以学习如何实现这样的自定义函数,并在自己的...

    php urlencode()与urldecode()函数字符编码原理详解

    在Web开发中,正确地使用urlencode() 和 urldecode() 函数,可以有效避免由于URL参数编码不兼容导致的错误。例如,在使用GET请求方式提交表单时,如果不正确地对中文或特殊字符进行编码,可能会在服务器端接收到错误...

    ASP中实现的URLEncode、URLDecode自定义函数

    在ASP中,虽然内置了server.URLEncode和server.URLDecode方法,但这些内置方法有时会将HTML或XML中的标签如&lt;, &gt;等也进行编码,这在某些场景下可能不是我们所希望的。为此,可以使用自定义函数来实现更符合需求的URL...

    Javascript UrlDecode函数代码

    `UrlEncode`和`UrlDecode`函数就是用于处理URL字符串的编码和解码过程。在给定的代码中,作者提供了两个自定义的函数:`ShengUtils.encode`和`ShengUtils.decode`,分别实现了这个功能。 `ShengUtils.encode`函数的...

    idea插件toolsMix(记录下班时间、实时中英文翻译、jsonView、urlEncode、urlDecode、timeFormate)源码

    idea插件toolsMix (记录下班时间、实时中英文翻译、jsonView、urlEncode、urlDecode、timeFormate) 解压toolsMix.zip,toolsMix目录下的zip包为打包好的插件包,可以直接安装

Global site tag (gtag.js) - Google Analytics