js的JSON新方法和历史记录管理
2024-09-04 11:22:35
今天看妙味的视频,一下是一些简单的笔记:
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>
最新文章
- nova-compute 部署 instance 详解 - 每天5分钟玩转 OpenStack(28)
- CentOS6.4 访问域局网中Windows的共享
- CentOS 6.4安装配置LNMP服务器(Nginx+PHP+MySQL)
- Css 常用属性
- 转:C语言字符串操作函数 - strcpy、strcmp、strcat、反转、回文
- UIProgressView swift
- 【Android】利用服务Service创建标题栏通知
- hdu4619Warm up 2
- JAVA并行框架学习之ForkJoin
- JavaScript之String()和.toString()
- iOS 从网络获取son并解析
- soj 1700 ping_简单dp
- 记一次C++与lua连接
- caogao
- 安装Redis后RedisDesktopManager无法连接
- 【SAP S/4 1511之变】:主数据之变
- VMWare 鼠标无法点击 的问题
- 【Entity Framework】disable automatic migration, 执行update-migration仍然会显示有automatic migration
- What is a working set and how do I use it?
- JS面试Q&;A(续):Javascript数组排序, 默认是字符串Unicode排序, 不适合数字
热门文章
- ASP.NET + MVC5 入门完整教程八 -—-- 一个完整的应用程序(下)
- [C++] JsonCPP 的使用 完整配置过程
- 051_switch语句的使用 052_while循环详解 053_for循环详解_dowhile简介 054_嵌套循环_循环相关练习
- HDU多校第三场 Hdu6606 Distribution of books 线段树优化DP
- 前端分页神器,jquery grid的使用(前后端联调),让分页变得更简单。
- es7实现数学乘方
- THINKPHP 模板上传图片--后台接收图片
- SpringMVC开发RESTful接口
- 题解【洛谷P2279】[HNOI2003]消防局的设立
- mybatis--多对一关联