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


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 相关文章推荐
Apply an AutoFormat to an Excel Spreadsheet
Jun 12 Javascript
JavaScript及jquey实现多个数组的合并操作
Sep 06 Javascript
jQuery EasyUI datagrid在翻页以后仍能记录被选中行的实现代码
Aug 15 Javascript
JavaScript函数基础详解
Feb 03 Javascript
JS+canvas实现的五子棋游戏【人机大战版】
Jul 19 Javascript
JavaScript实现的原生态兼容IE6可调可控滚动文字功能详解
Sep 19 Javascript
vue v-model实现自定义样式多选与单选功能
Jul 05 Javascript
vue-cli项目无法用本机IP访问的解决方法
Sep 20 Javascript
详解elementui之el-image-viewer(图片查看器)
Aug 30 Javascript
vue中英文切换实例代码
Jan 21 Javascript
原生js实现随机点名
Jul 05 Javascript
微信小程序中data-key属性之数据传输(经验总结)
Aug 22 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
URL Rewrite的设置方法
2007/01/02 PHP
深入密码加salt原理的分析
2013/06/06 PHP
如何让thinkphp在模型中自动完成session赋值小教程
2014/09/05 PHP
PHP遍历数组的三种方法及效率对比分析
2015/02/12 PHP
JSON两种结构之对象和数组的理解
2016/07/19 PHP
PHP排序算法之堆排序(Heap Sort)实例详解
2018/04/21 PHP
js 替换
2008/02/19 Javascript
checkbox使用示例
2013/08/23 Javascript
对于Form表单reset方法的新认识
2014/03/05 Javascript
Flexigrid在IE下不显示数据的有效处理方法
2014/09/04 Javascript
使表格的标题列可左右拉伸jquery插件封装
2014/11/24 Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
2015/03/28 Javascript
浅谈jQuery页面的滚动位置scrollTop、scrollLeft
2015/05/19 Javascript
jquery分割字符串的方法
2015/06/24 Javascript
javascript获取select值的方法分析
2015/07/02 Javascript
JavaScript中push(),join() 函数 实例详解
2016/09/06 Javascript
浅谈Node.js 沙箱环境
2018/05/15 Javascript
Angular7中创建组件/自定义指令/管道的方法实例详解
2019/04/02 Javascript
vue+Element实现搜索关键字高亮功能
2019/05/28 Javascript
python使用内存zipfile对象在内存中打包文件示例
2014/04/30 Python
Python numpy 提取矩阵的某一行或某一列的实例
2018/04/03 Python
Python实现简单石头剪刀布游戏
2021/01/20 Python
Python根据当前日期取去年同星期日期
2019/04/14 Python
人工神经网络算法知识点总结
2019/06/11 Python
pyqt5中QThread在使用时出现重复emit的实例
2019/06/21 Python
python动态规划算法实例详解
2020/11/22 Python
python实现图片转字符画
2021/02/19 Python
利用CSS3的transform做的动态时钟效果
2011/09/21 HTML / CSS
amazeui模态框弹出后立马消失并刷新页面
2020/08/19 HTML / CSS
给酒店员工的表扬信
2014/01/11 职场文书
葬礼司仪主持词
2014/03/31 职场文书
英语自我介绍演讲稿
2014/09/01 职场文书
2014党员自我评议表范文
2014/09/20 职场文书
2015年物业管理工作总结
2015/04/23 职场文书
安全教育培训心得体会
2016/01/15 职场文书
MySQL中一条SQL查询语句是如何执行的
2022/04/08 MySQL