JavaScript学习-存储操作(browser)

本文深入解析前端存储技术,包括sessionStorage和localStorage的使用方法,如何存储字符串、数组和对象,以及数据的读取和删除操作。

一、存储方式

1.1 回话存储——sessionStorage

语法:widow.sessionStorage
含义:临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。

1.2 本地存储——localStorage

语法:widow.localStorage
含义:长久保存整个网站的数据,保存的数据没有过期时间,直到手动去除。

二、存修数据——setItem

语法:localStorage.setItem(keyname, value)
含义:若无则存,若有则改。

2.1 单字符串

var localstorage = window.localStorage;
function savelocalStorage(){
	// 写入一:name = "张三";
	localstorage["name"] = "张三";
	// 写入二:age = 18;
	localstorage.age = 18;
	// 写入三:scores = 8;
	localstorage.setItem("scores", 8);
	//console.log(typeof storage["name"]);
	//console.log(typeof storage["age"]);
	//console.log(typeof storage["scores"]);
}
savelocalStorage();

2.2 数组

var localstorage = window.localStorage;
var array1 = [["1","2","3"],["4","5","6"],["7","8","9"]];
var stuJS;
// ======================数组存储================
function saveObject(stuJS){
	var stuJSON = JSON.stringify(stuJS);
	localstorage.setItem("stuJS", stuJSON);
	console.log(localstorage.stuJS);
// 结果为:"[["1","2","3"],["4","5","6"],["7","8","9"]]"
	console.log(typeof localstorage.stuJS);
	// 结果为:string
}
saveObject(stu);
// ======================数组读取================
function readObject(stuJS){	
	var stuJSON2=localstorage.getItem("stuJS");
	var stuJS2=JSON.parse(stuJSON2);
	console.log(stuJS2);
	// 结果为:[["1","2","3"],["4","5","6"],["7","8","9"]]
	console.log(typeof stuJS2);
	// 结果为:object
}
readObject(stuJS);

2.3 对象

var localstorage = window.localStorage;
// ======================对象存储================
var stu = {name:"张三", sex:"man", hobby:"program"};
var stuJS;
function saveObject(stuJS){
// 把JavaScript对象转化为JSON字符串
	var stuJSON = JSON.stringify(stuJS);
// 存储JSON字符串
	localstorage.setItem("stuJS", stuJSON);
	console.log(localstorage.stuJS);
// 结果为:{"name":"张三","sex":"man","hobby":"program"}
}
saveObject(stu);
// ======================对象读取================
function readObject(stuJS){	
	var stuJSON2=localstorage.getItem("stuJS");
	// 把JSON字符串转化为JavaScript对象
	var stuJS2=JSON.parse(stuJSON2);
	console.log(stuJS2);
	// 结果为:{name: "张三", sex: "man", hobby: "program"}
}
readObject(stuJS);

三、读取数据

2.1 key/value数量

语法:localStorage.length
含义:返回存储对象中包含多少条数据。

2.2 key名

语法:localStorage.key(n)
含义:返回存储对象中第 n 个键的名称

2.3 value值

语法:localStorage.getItem(keyname)
含义: 返回指定键的值

var localstorage = window.localStorage;
function readlocalStorage(){
// ====根据键值名读取键值=
	// 读取法一:
	var name = localstorage["name"];
	// 读取法二:
	var age = localstorage.age;
	// 读取法三:
	var scores = localstorage.getItem("scores");
// ====根据键值序号读取==
	for(var i = 0; i < localstorage.length; i++){
		// 读取键值名
		var key = localstorage.key(i);
		// 读取键值
		var keyvalue = localstorage.getItem(key);
		console.log(key,keyvalue);
	}
}
readlocalStorage();

五、删除数据

5.1 单个键值对

语法:localStorage.removeItem(keyname)
含义:移除键

5.2 所有键值对

语法:localStorage.clear()
含义:清除存储对象中所有的键

var localstorage = window.localStorage;
function clearlocalStorage(){
	// 清除某个键值对
	storage.removeItem("scores");
	// 清空所有内容
	storage.clear();
}
clearlocalStorage();*/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值