js的JSON新方法和历史记录管理
今天看妙味的视频,一下是一些简单的笔记:
1.JSON的一些新方法:
JSON.stringify();
JSON.parse();
第一个是把js脚本转换成JSON的字符串形式。
而第二个则是吧这种字串形式的JSON解析出来。具体使用可以百度查询。
新方法,自然就牵扯到兼容问题,老师提到,到json.org也就是json官网去下载一个脚本json2.js,在使用时包含进去,新方法可以兼容到IE7.
2.触发历史管理:1.通过跳转页面 2.通过hash(onhashchange事件) 3.pushState
demo如下:
<body>
<input type="button" id="input1" value="获取彩票">
<div id="div1"></div>
<script type="text/javascript">
// 触发历史管理:1.通过跳转页面 2.通过hash(onhashchange事件) 3.pushState
/*window.onload = function(){
var oIpt = document.getElementById('input1');
var oDiv = document.getElementById('div1');
var json = {}; oIpt.onclick = function(){
var num = Math.random();
var arr = randomNum(25,7);
json[num] = arr;
oDiv.innerHTML = arr;
window.location.hash = num;
}; window.onhashchange = function(){
oDiv.innerHTML = json[window.location.hash.substring(1)]; };
function randomNum(iAll,iNow){
var arr = [];
var newArr = [];
for(var i=1;i<iAll;i++){
arr.push(i);
} for(var i=0;i<iNow;i++){
newArr.push(arr.splice(Math.floor(Math.random()*arr.length),1));
}
return newArr;
}
}*/
// 使用pushState
window.onload = function(){
var oIpt = document.getElementById('input1');
var oDiv = document.getElementById('div1'); oIpt.onclick = function(){
var arr = randomNum(55,8);
history.pushState(arr,'',arr);
oDiv.innerHTML = arr;
}; window.onpopstate = function(ev){
oDiv.innerHTML = ev.state;
};
function randomNum(iAll,iNow){
var arr = [];
var newArr = [];
for(var i=1;i<iAll;i++){
arr.push(i);
} for(var i=0;i<iNow;i++){
newArr.push(arr.splice(Math.floor(Math.random()*arr.length),1));
}
return newArr;
}
};
</script>
</body>
js的JSON新方法和历史记录管理的更多相关文章
- JS操作JSON的方法总结
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意 ...
- 原生js格式化json的方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JS中JSON.stringify()方法,将js对象(json串)转换成字符串,传入服务器
JSON 通常用于与服务端交换数据. 在向服务器发送数据时一般是字符串. 我们可以使用 JSON.stringify() 方法将 JavaScript 对象转换为字符串. 语法 JSON.string ...
- js处理json的方法
var json = "{id:"myid", url:"http://www.myurl.com"}"; var js= (new Fun ...
- 原生js格式化json和格式化xml的方法
在工作中一直看各位前辈的博客解决各种问题,对我的帮助很大,非常感谢! 之前一直比较忙没有写博客,终于过年有了点空闲时间,可以把自己积累的东西分享下,笔记中的部分函数不是自己写的,都是工作中一点点积累的 ...
- JavaScript操作JSON的方法总结,JSON字符串转换为JSON对象
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意 ...
- js读取json数据(php传值给js)
<?php $array =array('fds','fdsa','fdsafasd'); // json_encode($array); ?> <html> <hea ...
- 原生js格式化json工具
json格式化小工具,原生js编写,直接上代码: <!DOCTYPE html> <html lang="en"> <head> <met ...
- js读取json数据
{ "code": 0, "msg": null, "data": { "pageNum": 1, "page ...
随机推荐
- 第五十篇 入门机器学习——线性回归(Linear Regression)
No.1. 线性回归算法的特点 No.2. 分类问题与回归问题的区别 上图中,左侧为分类问题,右侧为回归问题.左侧图中,横轴和纵轴表示的都是样本的特征,用不同的颜色来作为输出标记,表示不同的种类:左侧 ...
- jenkins常用
记最精简版的启动:gradle集成springboot+vue 安装jenkins,安装待推荐插件 服务器安装gradle 服务器安装npm 配置git仓库,配置git开发者账号等 配置gradle构 ...
- Java中怎么把科学计数法显示出全部数字
如果想去除科学计数法显示可以用如下方法处理: /** * 把科学计数法显示出全部数字 * @param d */ public static String object2Str(Object d) { ...
- [Note]后缀自动机
后缀自动机 代码 #include <cstdio> #include <algorithm> #include <cstring> const int M = 1 ...
- party lamps(dfs优化+规律枚举)
Problem description: To brighten up the gala dinner of the IOI'98 we have a set of N coloured lamps ...
- 《你一生的故事》--------------science fiction-------------《巴比伦塔》
而塔就不一样了,不等你靠近去触摸它,就已经感到一种纯粹的坚固与力量.所有的传说都认为,建造这座塔的目的,是为了获得一种力量,这种力量是任何一座巴比伦庙塔都未曾拥有的.普通的巴比伦塔只是用太阳晒干的泥砖 ...
- mutiprocessing 同步类型,如锁,条件和队列官方案例:
官方文档:https://docs.python.org/2/library/multiprocessing.html#module-multiprocessing 1. 同步类型,如锁,条件和队列官 ...
- 美多商城后台MIS系统部署之Nginx配置
先进入Nginx的配置文件中,进行配置. Nginx配置文件夹的区别: cd /etc/nginx/conf.d/ 创建.conf后缀的文件 /etc/nginx/sites-enabled 创 ...
- Linux05——用户操作
用户操作 1.新增用户(useradd 新用户名): 2.设置密码(passwd 用户名): 3.用户是否存在(id 用户名): 4.切换用户(su - 切换用户名) **—— ** s ...
- 工厂方法模式(JAVA反射)
简单工厂模式的不足 在简单工厂模式中,只提供了一个工厂类,该工厂类处于对产品类进行实例化的中心位置,它知道每一个产品对象的创建细节,并决定何时实例化哪一个产品类.简单工厂模式最大的缺点是当有新 ...