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


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 相关文章推荐
JavaScript NaN和Infinity特殊值 [译]
Sep 20 Javascript
Javascript仿PHP $_GET获取URL中的参数
May 12 Javascript
angularjs学习笔记之双向数据绑定
Sep 26 Javascript
jQuery控制frames及frame页面JS的方法
Mar 08 Javascript
强大Vue.js组件浅析
Sep 12 Javascript
JS中常用的正则表达式
Sep 29 Javascript
vue-cli如何添加less 以及sass
Jul 06 Javascript
JS实现按钮颜色切换效果
Sep 05 Javascript
JQuery通过后台获取数据遍历到前台的方法
Aug 13 jQuery
对layui中表单元素的使用详解
Aug 15 Javascript
Vue配置marked链接添加target=&quot;_blank&quot;的方法
Jul 19 Javascript
简单聊聊TypeScript只读修饰符
Apr 06 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
php&amp;java(三)
2006/10/09 PHP
DedeCMS 核心类TypeLink.class.php摘要笔记
2010/04/07 PHP
PHP中使用gettext解决国际化问题的例子(i18n)
2014/06/13 PHP
php使用Image Magick将PDF文件转换为JPG文件的方法
2015/04/01 PHP
PHP实现找出有序数组中绝对值最小的数算法分析
2017/08/07 PHP
PHP新特性之字节码缓存和内置服务器
2017/08/11 PHP
laravel中的一些简单实用功能
2018/11/03 PHP
php写入文件不覆盖的实例讲解
2019/09/17 PHP
最短的IE判断代码
2011/03/13 Javascript
对new functionName()定义一个函数的理解
2014/05/22 Javascript
浅析javascript的间隔调用和延时调用
2014/11/12 Javascript
JavaScript获取DOM元素的11种方法总结
2015/04/25 Javascript
快速学习AngularJs HTTP响应拦截器
2015/12/31 Javascript
JavaScript判断页面加载完之后再执行预定函数的技巧
2016/05/17 Javascript
AngularJS实现数据列表的增加、删除和上移下移等功能实例
2016/09/05 Javascript
jQuery checkbox选中问题之prop与attr注意点分析
2016/11/15 Javascript
JS在浏览器中解析Base64编码图像
2017/02/09 Javascript
Vue 理解之白话 getter/setter详解
2019/04/16 Javascript
小程序实现上下切换位置
2020/11/16 Javascript
Python基于二分查找实现求整数平方根的方法
2016/05/12 Python
使用Python实现博客上进行自动翻页
2017/08/23 Python
Python编程之Re模块下的函数介绍
2017/10/28 Python
python GUI库图形界面开发之PyQt5下拉列表框控件QComboBox详细使用方法与实例
2020/02/27 Python
Python PyQt5运行程序把输出信息展示到GUI图形界面上
2020/04/27 Python
python 抓取知乎指定回答下视频的方法
2020/07/09 Python
利用python+ffmpeg合并B站视频及格式转换的实例代码
2020/11/24 Python
Electrolux伊莱克斯巴西商店:家用电器、小家电和配件
2018/05/23 全球购物
六月份红领巾广播稿
2014/02/03 职场文书
入学生会自荐书范文
2014/02/05 职场文书
中华美德颂演讲稿
2014/05/20 职场文书
财务管理专业求职信
2014/06/11 职场文书
幸福终点站观后感
2015/06/04 职场文书
《我的伯父鲁迅先生》教学反思
2016/02/16 职场文书
python自动化之如何利用allure生成测试报告
2021/05/02 Python
VS2019连接MySQL数据库的过程及常见问题总结
2021/11/27 MySQL
mysql使用instr达到in(字符串)的效果
2022/04/03 MySQL