一个不错的字符串转码解码函数(自写)


Posted in Javascript onJuly 31, 2014
function isString(variable) {
  return Object.prototype.toString.call(variable).indexOf('String') != -1;
}

function isNumeric(variable) {
  return !isNaN(parseFloat(variable)) && isFinite(variable);
}

function stringEncode(string) {
  string = isString(string) || isNumeric(string) ? String(string) : '';

  var code,
    i = 0,
    code_string = '',
    len = string.length;

  while(i < string.length) {
    code = string.charCodeAt(i);
    code_string += '' + String(code).length + code;
    i++;
  }

  return code_string;
}

function stringDecode(code) {
  var i = 0,
    code_len,
    decode_string = '';
  code = String(code);
  while(i < code.length) {
    code_len = +code.charAt(i);
    i++;
    decode_string += String.fromCharCode(+code.substr(i, code_len));
    i += code_len;
  }
  return decode_string;
}
Javascript 相关文章推荐
js选取多个或单个元素的实现代码(用class)
Aug 22 Javascript
原生JavaScript生成GUID的实现示例
Sep 05 Javascript
javascript实现动态表头及表列的展现方法
Jul 14 Javascript
Jquery代码实现图片轮播效果(一)
Aug 12 Javascript
JavaScript中的定时器之Item23的合理使用
Oct 30 Javascript
在Docker快速部署Node.js应用的详细步骤
Sep 02 Javascript
整理关于Bootstrap导航的慕课笔记
Mar 29 Javascript
利用JS对iframe父子(内外)页面进行操作的方法教程
Jun 15 Javascript
vue scroller返回页面记住滚动位置的实例代码
Jan 29 Javascript
vue devtools的安装与使用教程
Aug 08 Javascript
JavaScript实现数字前补“0”的五种方法示例
Jan 03 Javascript
vue实现学生信息管理系统
May 30 Javascript
javascript 获取函数形参个数
Jul 31 #Javascript
javascript 10进制和62进制的相互转换
Jul 31 #Javascript
JavaScript Serializer序列化时间处理示例
Jul 31 #Javascript
javascript里绝对用的上的字符分割函数总结
Jul 31 #Javascript
超链接的禁用属性Disabled使用示例
Jul 31 #Javascript
Windows 系统下安装和部署Egret的开发环境
Jul 31 #Javascript
js锁屏解屏通过对$.ajax进行封装实现
Jul 31 #Javascript
You might like
深入密码加salt原理的分析
2013/06/06 PHP
PHP实现上传多文件示例代码
2017/02/20 PHP
php str_replace替换指定次数的方法详解
2017/05/05 PHP
PHP基础之输出缓冲区基本概念、原理分析
2019/06/19 PHP
javascript showModalDialog,open取得父窗口的方法
2010/03/10 Javascript
深入理解JavaScript系列(30):设计模式之外观模式详解
2015/03/03 Javascript
jQuery 1.9.1源码分析系列(十五)动画处理之缓动动画核心Tween
2015/12/03 Javascript
原生JS下拉加载插件分享
2016/12/26 Javascript
详解vuejs几种不同组件(页面)间传值的方式
2017/06/01 Javascript
基于Bootstrap下拉框插件bootstrap-select使用方法详解
2018/08/07 Javascript
AngularJS上传文件的示例代码
2018/11/10 Javascript
JSON的parse()方法介绍
2019/01/31 Javascript
jquery 验证用户名是否重复代码实例
2019/05/14 jQuery
Node 使用express-http-proxy 做api网关的实现
2020/10/15 Javascript
[01:01:52]完美世界DOTA2联赛PWL S2 GXR vs Magma 第二场 11.25
2020/11/26 DOTA
使用Anaconda3建立虚拟独立的python2.7环境方法
2018/06/11 Python
Django框架model模型对象验证实现方法分析
2019/10/02 Python
使用Python进行中文繁简转换的实现代码
2019/10/18 Python
python实现人机猜拳小游戏
2020/02/03 Python
django filter过滤器实现显示某个类型指定字段不同值方式
2020/07/16 Python
Python如何测试stdout输出
2020/08/10 Python
css3实现小箭头各种图形效果
2020/07/08 HTML / CSS
程序设计HTML5 Canvas API
2013/04/08 HTML / CSS
Linux的文件类型
2016/07/05 面试题
计算机网络专业推荐信
2013/11/24 职场文书
素食餐饮项目创业计划书
2014/02/02 职场文书
财务会计毕业生个人求职信
2014/02/03 职场文书
博士毕业生自我鉴定范文
2014/04/13 职场文书
数学教育专业求职信
2014/07/22 职场文书
打架检讨书
2015/01/27 职场文书
2015年底工作总结范文
2015/05/15 职场文书
《狮子和鹿》教学反思
2016/02/16 职场文书
pytorch 两个GPU同时训练的解决方案
2021/06/01 Python
2007年老电脑安装win11会怎么样? 网友实测win11在老电脑运行良好
2021/11/21 数码科技
python模拟浏览器 使用selenium进入好友QQ空间并留言
2022/04/12 Python
Nginx跨域问题解析与解决
2022/08/05 Servers