JS本地存储
- 注意点:
- 本地存储localStorage里面只能存储字符串格式,因此需要把对象转换为字符串。
- 获取本地存储数据,需要把里面的字符串转换为对象格式
本地存储:
- localStorage.setItem(‘存储到的字符串名’,‘要存储的数据对象(JSON)’).
- localStorage.getItem(‘获取存储的数据对象名(JSON)’).
字符串和数组对象之间的相互转换:
- 数组对象转化为字符串格式 JSON.stringify()
- 字符串数据转换为 对象格式 JSON.parse()
部分代码如下
todoList = [{
title: '我好饿啊,我偏要吃饭',
done: false
}, {
title: '我今天在学习本地存储',
done: false
}]
// 本地存储一下,把我们的数组对象转化为字符串格式 JSON.stringify()
localStorage.setItem('todo', JSON.stringify(todoList));
var data = localStorage.getItem('todo');
// console.log(typeof data);
// console.log(data[0].title); //undefined
// 获取本地存储的数据 我们需要把需要的字符串数据转换为 对象格式 JSON.parse()
data = JSON.parse(data);
console.log(data);
console.log(data[0].title);
JS数组对象
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
- arrayObject.splice(index,howmany,item1,…,itemX)
- index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
- howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
- item1, …, itemX 可选。向数组添加的新项目。
使用的代码
var data = [1, 3, 'b', 4, 6, 3];
console.log(data); // (6) [1, 3, "b", 4, 6, 3]
data_splice = data.splice(2, 2);
console.log(data); // (4) [1, 3, 6, 3]
console.log(data_splice); // (2) ["b", 4]
js获取字符串最后一位方法
//运用String对象下的charAt方法
//charAt() 方法可返回指定位置的字符。
str.charAt(str.length – 1)
自定义属性
// 专门获取自定义属性
object.getAttribute("attr");
// 设置自定义属性
object.setAttribute("attr");
// 移除自定义属性
object.removeAttribute("attr")
// 移除类样式
1- object.className="";
2- object.removeAttribute("class")
节点
在谷歌火狐中,节点就是节点,元素就是元素
在IE中,节点为元素,元素不兼容(undefined)
- object.parentNode和object.parentElement都能返回父级元素
- object.childNodes---获取所有子节点
- object.children---获取所有子元素
-
- object.firstChild // IE中为元素,在前面没有文本时
- object.firstElementChild // IE不兼容
- object.lastChild // IE中为元素,在前面没有文本时
- object.lastElementChild // IE不兼容
- object.previousSibling // IE中为元素,在前面没有文本时
- object.previousElementSibling // IE不兼容
- object.nextSibling // IE中为元素,在前面没有文本时
- object.nextElementSibling // IE不兼容
- nodeType:1:标签(元素),2:属性,3:文本(包括空格和回车);
- nodeName:大写的标签名字,小写的属性节点,#text;
- nodeValue:null,属性值,文本内容