js常用数据操作函数库

1.js操作cookie

js原生操作cookie
document.cookie=”name=”+username;
编写函数
//写cookies
function setCookie(name,value)
{
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + “=”+ escape (value) + “;expires=” +    exp.toGMTString();
}
//读cookie
function getCookie(name)
{
var arr,reg=new RegExp(“(^| )”+name+”=([^;]*)(;|$)”);
if(arr=document.cookie.match(reg))
return unescape(arr[2]);
else
return null;
}
//删除cookie
function delCookie(name)
{
var exp = new Date();
exp.setTime(exp.getTime() – 1);
var cval=getCookie(name);
if(cval!=null)
document.cookie= name + “=”+cval+”;expires=”+exp.toGMTString();
}

2.js获取url 

有时候会出现编码错误导致的乱码
function get_url_var(name)
{
var reg = new RegExp(“(^|&)”+ name +”=([^&]*)(&|$)”);
var r = window.location.search.substr(1).match(reg);
if(r!=null)return  unescape(r[2]); return null;
}

3.jq  ajax

$.ajax({
url:url
data:{
‘ui_cardnum’:ui_cardnum
},
type:’post’,
dataType:’json’,

success:function(data){

 

},
error:function(data) {
console.log(data);
}
});

 

4.js  操作localstorage

  • 获取键值:localStorage.getItem(“key”)
  • 设置键值:localStorage.setItem(“key”,”value”)
  • 清除键值:localStorage.removeItem(“key”)
  • 清除所有键值:localStorage.clear()

《js常用数据操作函数库》有3个想法

  1. function jsReadFiles(files) {
    if (files.length) {
    var file = files[0];
    var reader = new FileReader();//new一个FileReader实例
    if (/text+/.test(file.type)) {//判断文件类型,是不是text类型
    reader.onload = function() {
    $(‘body’).append(” + this.result + ”);
    }
    reader.readAsText(file);
    } else if(/image+/.test(file.type)) {//判断文件是不是imgage类型
    reader.onload = function() {
    $(‘body’).append(”);
    }
    reader.readAsDataURL(file);
    }
    }
    }

  2. function Base64() {

    // private property
    _keyStr = “ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=”;

    // public method for encoding
    this.encode = function (input) {
    var output = “”;
    var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
    var i = 0;
    input = _utf8_encode(input);
    while (i > 2;
    enc2 = ((chr1 & 3) <> 4);
    enc3 = ((chr2 & 15) <> 6);
    enc4 = chr3 & 63;
    if (isNaN(chr2)) {
    enc3 = enc4 = 64;
    } else if (isNaN(chr3)) {
    enc4 = 64;
    }
    output = output +
    _keyStr.charAt(enc1) + _keyStr.charAt(enc2) +
    _keyStr.charAt(enc3) + _keyStr.charAt(enc4);
    }
    return output;
    }

    // public method for decoding
    this.decode = function (input) {
    var output = “”;
    var chr1, chr2, chr3;
    var enc1, enc2, enc3, enc4;
    var i = 0;
    input = input.replace(/[^A-Za-z0-9\+\/\=]/g, “”);
    while (i < input.length) {
    enc1 = _keyStr.indexOf(input.charAt(i++));
    enc2 = _keyStr.indexOf(input.charAt(i++));
    enc3 = _keyStr.indexOf(input.charAt(i++));
    enc4 = _keyStr.indexOf(input.charAt(i++));
    chr1 = (enc1 <> 4);
    chr2 = ((enc2 & 15) <> 2);
    chr3 = ((enc3 & 3) << 6) | enc4;
    output = output + String.fromCharCode(chr1);
    if (enc3 != 64) {
    output = output + String.fromCharCode(chr2);
    }
    if (enc4 != 64) {
    output = output + String.fromCharCode(chr3);
    }
    }
    output = _utf8_decode(output);
    return output;
    }

    // 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 127) && (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 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;
    }
    }

发表评论

电子邮件地址不会被公开。 必填项已用*标注