自定义属性
. 获取属性
. 只能获取到默认的属性
[]
[]有利于属性传参操作
css(elem,‘background’,‘yellow’);
function css(el,attr,color){
el[‘style’][attr]=color;
//al.style[attr]=color;
}
getAttribute和setAttribute
//getAttribute获取自定义属性
//setAttribute设置自定义属性
console.log(elem.getAttribute(‘qianfeng’));
elem.setAttribute(‘qianfeng’,‘教育’);
console.log(elem.getAttribute(‘qianfeng’));
data-
//直接对节点设置自定义属性,不会添加到节点内容中,但是可以直接获取
elem.aaa=‘red’;
console.log(elem.aaa);
字符串操作
字符串截取操作
str.substring(num1,num2) 第一个参数代表初始位置,第二个是结束位置(不包含结束)
只写一个参数,从num1到最后,包括最后
slice 与 substring 相似:
substring 参数大小可以调换,slice调换后返回空
slice可以写负数,从字符串最后往前截取,-1表示最后一位,substring写负数就返回空
str.substr(num1,num2) 第一个参数表示开始位置,第二个表示截取长度
str.split(’+’) 字符串切割,返回数组
字符串查找
str.charAt(1) 推荐 通过下标找到字符
str[i] 耗性能
str.charCodeAt(3) 可以查看指定字符编码,不写参数默认第一个
str.indexof(‘e’) 得到对应字符所在位置,找到第一个满足条件的
str.indeof(‘e’,4) 指定起始位置,找不到返回-1
str.lastIndexof(‘e’,2) 第二个参数指定结束位置,向前找
str.indexof(‘eee’)>-1 可以判断是否包含指定字符串
ES6语法:
includes() 判断是否出现指定字符串
str.toUpperCase() 全部转大写
str.toLowerCase() 全部转小写
str.trim 去掉字符串前后空格
数组操作
arr.push() 向数组最后添加新项
arr.unshift() 向数组起始位置添加新项
arr.pop() 删除数组最后一项
arr.shift() 删除数组起始一项
pop、shifft 执行完返回的是数组被删除的项
push、unshift 执行完返回的是当前数组的长度
arr.join(’’) 将数组连接成字符串,默认用,号连接
concat 连接数组
例:var c=a.concat(b);
indexOf lastIndexOf slice同样可以对数组操作
join concat slice (map filter …)不能修改原数组
push pop unshift shift (splice reverse sort)能修改原数组
arr.splice(num1,num2) 第一个参数表示切割起始位置,第二个参数表示切割长度
arr.splice(a,b,c,d) 前两个表示切割,后边的表示添加的新项,添加在切割位置上
arr.reverse(); 改变原数组,把整个数组顺序颠倒
arr.sort(); 改变原数组,默认会转化为字符串,按位一位一位去比较,然后排序
var arr=[2,49,23,78,45];
arr.sort(function(n1,n2){
return n2-n1; //默认n2比n1大,返回负数位置不变,返回正数位置调换
});
console.log(arr); //[78,49,45,23,2]
下面方法不会改变原数组
arr.every会返回一个布尔值,每一项都满足返回true,整体就返回true
arr.every(function(val,i,a){ 当前数组元素,索引,整个数组
return val<23;
});
arr.some会返回一个布尔值,有一项都满足返回true,整体就返回true
arr.some(function(val,i,a){ 当前数组元素,索引,整个数组
return val<23;
});
arr.filter会返回一个新数组,把每一个满足条件的放到新数组中返回
arr.filter(function(val,i,a){ 当前数组元素,索引,整个数组
return val<23;
});
arr.map会映射出一个新数组,把return结果放进一个数组
arr.map(function(val,i,a){ 当前数组元素,索引,整个数组
return val<23;
});
arr.forEach遍历数组操作
arr.forEach(function(val,i){ 当前数组元素,索引
console.log(val,i);
});