H5时代的新存储简介
1.WebStorage
分为:sessionStorage和localStorage两种,除了session的生命周期是在该域全部页面被关闭后就被清除而local是无限期存在外,二者的使用与方法属性事件都相同。
简介:Cookie未来的替代品。有存储量大、稳定、存取简便的优点,缺点是安全性,虽然每个域都会有它独立的Storage,但是使用跨域的手段依然能够取到非本域的Storage数据,但是在常规使用上是不存在跨域问题的。
几个方法:
setItem(key,value)存值
getItem(key) 取值
clear() 清空
key(index) 取键
removeItem(key) 删除这个值
属性:
length
事件:
至于那个onStorage事件,IE和FF支持的不怎么完善,还是等等再说
2.Web SQL
使用步骤:
a.首先打开并建立一个数据库:var db=openDatabase('dbname','2.0','我的数据库',2*1024); 四个参数:数据库名,版本号,描述,大小(单位:B)
b.然后使用数据库:db.transaction(function(dbcontrol){}); 参数只有一个回调函数而已,这个回调函数的函数体用来运行SQL,这个回调函数有一个参数,这个参数才是整个数据库使用的核心内容。
c.在这个数据库上运行自己的脚本:
- var sql = openDatabase('db', '2.0', '我的数据库', 2 * 1024);
- sql.transaction(function (tx) {
- tx.executeSql('CREATE TABLE IF NOT EXISTS S_MENU(ID,NAME,SEX)');
- tx.executeSql('INSERT INTO S_MENU VALUES(?,?,?)',['002','李四','男']);
- });
分别演示了创建数据表,和插入数据,注意里面的问号,相当于占位符
executeSql有四个参数:SQL语句,[SQL语句中的参数],操作成功后执行的代码,操作失败后执行的代码
如果是查询,我们怎么才能使用到查询出的结果呢?
- var sql = openDatabase('db', '2.0', '我的数据库', 2 * 1024);
- sql.transaction(function (tx) {
- tx.executeSql('SELECT * FROM S_MENU', [], function (tx, result) {
- alert(result.rows.item(0)['NAME']);
- });
- });
这里不能使用参数,否则无法得到查询结果。
对查询结果的操作需要写在操作成功后执行的代码中,参数有两个,一个是 数据库操作对象,也就是那个tx,还有一个就是得到的结果,就是result。得到结果的过程十分曲折,所以建议能用localStorage的地方就不要用web SQL了
H5时代的新存储简介的更多相关文章
- 海量数据存储之Key-Value存储简介
Key-value存储简介 具备高可靠性及可扩展性的海量数据存储对互联网公司来说是一个巨大的挑战,传统的数据库往往很难满足该需求,并且很多时候对于特定的系统绝大部分的检索都是基于主键的的查询,在这种情 ...
- ES6新特性简介
ES6新特性简介 环境安装 npm install -g babel npm install -g babel-node //提供基于node的REPL环境 //创建 .babelrc 文件 {&qu ...
- ORACLE数据库_迁移(新机器,新存储)
迁移: (10g 64老机器,老存储) ------>(11g 64新机器,新存储)注意要点:新老服务的时间,字符集,sid升级顺序:10.2.0.1------>10.2.0.4或10. ...
- Kotlin新语言简介和快速入门知识点
Kotlin新语言简介和快速入门知识点 简介:Kotlin是最近由JetBrains发布的一种基于JVM的编程语言,已经被Google宣布为开发Android App的一级语言Kotlin有着与Jav ...
- [转]MBTiles移动存储简介
首先奉上官网地址http://mapbox.com/developers/mbtiles/#storing_tiles 由于英文水平有限,看资料很费眼睛,特将它翻译成中文 存储瓦片 地图制作者面对一个 ...
- 11g RAC OCR,VOTING DISK存储全部损坏,利用自动备份,恢复OCR,VOTING DISK到新存储。
背景: 11g R2 rac 的orc ,voting disk asm存储磁盘全部损坏.通过调查得知 损坏的 OCR磁盘对应为 VOL1 ,voting disk磁盘对应于 VOL2 . 故,添加a ...
- 【ABAP系列】SAP ABAP7.40新语法简介第一篇
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP7.40新语法简 ...
- 【ABAP系列】SAP ABAP7.40新语法简介第二篇
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP7.40新语法简 ...
- Baccarat凭什么能成为DeFi后时代火爆新趋势?
在各币种经历涨涨跌跌以后,DeFi后时代已然来临.那么,当前DeFi市场中哪个项目更被市场生态建设者看好呢?毫无疑问,Baccarat会成为最被看好的DeFi项目. Baccarat采用了独特的共识算 ...
随机推荐
- opengl基础学习专题 (三) 多边形绘制的几种样式
题外话 聪明人之所以不会成功,是由于他们缺乏坚韧的毅力. ——艾萨克·牛顿(1643年1月4日—1727年3月31日)英国 也许可以理解为 想更深一步的时候,坚持,努力和聪明缺一不可. 挺直腰杆在此向 ...
- 快速的搭建JFinal的ORM框架示例
JFinal默认用的是Freemarker作为视图. 所以,打架还是准备好俩个jar包吧! freemarker-2.3.16.jar JFinal-bin-1.5.jar 新建web工程和添加lib ...
- Windows下使用Visual Studio Code搭建Go语言环境
1.安装GO语言 下载地址: https://golang.org/dl/ Windows下直接运行安装GO语言即可. 安装成功. 安装完毕GO语言后,需要添加GOPATH环 ...
- wpa_supplicant软件架构分析
wpa_supplicant软件架构分析 1. 启动命令 wpa supplicant 在启动时,启动命令可以带有很多参数,目前我们的启动命令如下: wpa_supplicant /system/bi ...
- iOS学习之Object-C语言内存管理高级
一.属性的内存管理
- 32.DDR2仿真结果
在STG之前,做了下Modelim,可以进行读写测试,关于速度的研究还需要看手册 数据终于出来了
- (转) ASCII码对应表chr(9)、chr(10)、chr(13)、chr(32)、chr(34)、chr(39)、chr(
chr(9) tab空格 chr(10) 换行 chr(13) 回车 Chr(13)&chr(10) 回车换行 chr(32) 空格符 ...
- 线程同步 Lock接口
同步:★★★★★ 好处:解决了线程安全问题. 弊端:相对降低性能,因为判断锁需要消耗资源,产生了死锁. 定义同步是有前提的: 1,必须要有两个或者两个以上的线程,才需要同步. 2,多个线程必须保证使用 ...
- 在VS2010中ActiveX控件注册方法,使用regsvr32命令
上一篇小编展示了如何设置VS2010自带的ActiveX控件的容器测试程序,现在为大家演示一下如何注册ActiveX控件. 首先简单了解一下ActiveX控件的知识,ActiveX控件:简单来说,就是 ...
- Linux下强制修改root密码方法(图)
如果Linux操作系统的root密码,那怎么办呢?方法很多,下面再给大家介绍一种. [1] 进入以下画面后,按下e按钮,进入编辑模式: [2]进入以下的画面后,选择如下所示的选项,再次按下e按钮: 然 ...