属性
标签上面的属性可以直接通过调用属性来设置
1、一个对象下面没有的属性返回undefined
2、只有对象才能去点方法点属性
Method | DES |
---|---|
节点对象.getAttribute('attr') | 获取属性 |
节点对象.setAttribute('src', '...') | 设置属性 |
节点对象.removeAttribute('attr') | 移除属性 |
获取样式
获取最终显示在网页上面的样式
Method | 适用对象 |
---|---|
getComputedStyle(box).width; | Chrome、Firefox |
box.currentStyle.width; | IE |
//例:兼容以上三种浏览器的方法
var box = document.getElementById("box");
function getStyle(dom,attr){//定义传参函数
if(dom.currentStyle){//判断是否为IE
return dom.currentStyle[attr];
}else{
return getComputedStyle(dom)[attr];
}
}
alert(getStyle(box,"width"));
数组
特点:
- 底层经过了一些优化,读取速度 会比对象对象快。
- 数组是有序列的集合,每一个存放的值叫元素,可以通过索引、下标、偏移。
- 数组可以装任意数据类型。
- 数组可容纳最大值2^32-1,4294967295。
- 当前索引没有元素返回undefined。
定义:
var arr = [1,2,3];//直接赋值法
var arr = new Array(1,2,3,4);//调用类,创建对象
判断数组:
Arry.isArray(arr);//直接判断
[] instanceof Array;//判断是否为同一个类
获取元素:
arr[index];//通过索引获取单个元素
arr[arr.length-1];//获取最后一个元素
arr.length;//查看个数
数组操作:
arr.push();//添加元素到末尾
arr.unshift();//添加元素在起始位置
arr.pop();//删除最后一个元素,返回被删除的元素
arr.shift();//删除第一个元素,返回被删除的元素
arr = [];//清空数组
arr.length = 0;//清空数组,同时保留了绑定的属性
in运算:
对象:判断左边属性(键)是否在对象当中
数组:判断当前索引位置是否被赋值
var arr1 = [1, 2];
arr1[0] = undefined;
arr1[1] = "this is slice";
arr1[20] = 10;
alert(0 in arr1);
数组剪裁(splice):
arr.splice();//返回被减掉的元素
参一:起始位置,当只有一个参数的时候从当前参数索引位置开始剪;
参二:剪多少个元素;
参三以上:替换被减掉的元素或插入在被减掉的元素的位置上面。
arr.splice(index);//从当前索引位置开始剪裁
arr.splice(index,num);//从当前索引位置开始剪裁num个元素
alert(arr.splice(2,1,"test","one"));//可用做替换,插入元素
alert(arr);
数组转换字符串
alert(typeof arr.toString());//转换为字符串
arr = arr.join("====");//转换为字符串
alert( arr.split("===="));//还原为数组