例如常见以下JSON格式:
var SomeJsonData = {
"Name": "hooyes",
"CreatedDate": "\/Date(1371447559479)\/",
"UpdateDate": "\/Date(1371707213434)\/"
};
Date 不是 2013-06-17 这样的字符串,而是 Date(….) 这样的JS格式。
在 JS 中把它给格式化出来,我在网上查下,发现大家都做得有点复杂,所以我要原创一个简单的。
我的方法如下:
//扩展一个自定义的格式化方法,格式化为 年 - 月 - 日
String.prototype.toCustomDateString = function () {
var r;
var d = eval("new " + this.replace(/\//g, ""));
//自定义格式
if (d.getFullYear() > 1000) {
month = d.getMonth() + 1;
r = d.getFullYear() + "-" + month + "-" + d.getDate();
}
return r;
}
var SomeJsonData = {
"Author": "hooyes",
"CreatedDate": "\/Date(1371447559479)\/",
"UpdateDate": "\/Date(1371707213434)\/"
};
//使用方法
var CreatedDate = SomeJsonData.CreatedDate.toCustomDateString();
var UpdateDate = SomeJsonData.UpdateDate.toCustomDateString();
alert(CreatedDate); //2013-6-17
alert(UpdateDate); //2013-6-20
其中 toCustomDateString 这个扩展性,可以根据自己的需求再改写一下。
例如Url地址 http://www.hooyes.com/test.html?name=hooyes&age=18
在test.html 页面中使用用js获取url 中参数 name 和 age 的值
function Request(m) {
var sValue = location.search.match(new RegExp("[\?\&]" + m + "=([^\&]*)(\&?)", "i"));
return sValue ? sValue[1] : sValue;
}
var name_val = Request("name"); //获得值 name 的值 hooyes
var age_val = Request("age"); //获得值 age 的值 18
使用JavaScript读写浏览器的Cookies,网络上有许多代码都写得太复杂累赘,我写个简洁的。
代码如下:
Cookie =
{
get: function (k) { return ((new RegExp(["(?:; )?", k, "=([^;]*);?"].join(""))).test(document.cookie) && RegExp["$1"]) || ""; },
set: function (k, v, e, d) { document.cookie = [k, "=", v, e && e["toGMTString"] ? ';expires=' + e.toGMTString() : "", ";path=/;domain=", d || ""].join(""); },
del:function(k){ document.cookie = [k, "=", "", ';expires=' + new Date(new Date().getTime()-99).toGMTString(), ";path=/;domain=", ""].join(""); },
};
// 简单写入
Cookie.set("UserID", "Hello hooyes");
// 设置有效期
Cookie.set("UserID", "Hello hooyes",new Date("2020-04-08 23:59:59"));
var val = Cookie.get("UserID");
Cookie.del("UserID");