js dom元素的事件
js 事件(js的事件前缀都带on)
- 键盘事件
- 表单事件
- 鼠标事件
- 浏览器事件
- 触屏事件
<1>onkeydown(键盘按下) onkeyup(抬起) onkeypress(按键)
<2>onfocus(获得焦点) onblur(失去焦点)
<3> onclick(单击) ondbclick(双击) onmouseleave(水平离开) onmouseout(离开) onmousemove(鼠标移动) onmouseenter(鼠标进入) onmouseover(鼠标悬停) onmousewheel(鼠标滚轮)
<4>window事件 onload(加载完成) onresize(窗口变化) onerror(报错) onscroll(滑动)
<5>touch(触屏) touchstart (开始触屏 ) touchmove(触屏移动) touchend(触屏结束)
给dom元素添加事件
常规添加
function btndou(a) {
console.log(a);
}
动态添加
var btn = document.getElementById("btn");
btn.onclick = function () {
console.log(1);
}
数组
赋值一个参数.代表数组长度
var arr = new Array(2);//赋值一个参数 代表的是数组的长度
console.log(arr);
join 是驻足转化为string 参数是按照什么符号拼接
console.log(k.join("|"));
reverse 数组的翻转
console.log(k.reverse());
slice 截断数组 参数 start end 索引 取小不取大 截取完成之后对原数组没有影响
console.log(k.slice(0, 2));
console.log(k);
splice 参数 start count 截取完成之后对原数组有影响
console.log(k.splice(0, 3));
console.log(k);
数组追加的方法
push数组内容之后追加 返回的值是数组的长度
console.log(k.push(0));
console.log(k);
unshift内容之前追加 返回值是数组的长度
console.log(k.unshift(-1));
console.log(k);
shift数组的删除 删除前面的 返回值是删除的值
console.log(k.shift());
console.log(k);
pop 删除是最后边的 返回值是删除的值
console.log(k.pop());
sort 排序的方法
#### 冒泡排序
console.time()
var a = [10, 2, 1, 4, 3, 5, 7, 6, 9, 8];
//冒泡
for (var i = 0; i < a.length; i++) {
var temp = null;
for (var k = 0; k < a.length - 1; k++) {
if (a[k] < a[k + 1]) {
temp = a[k + 1];
a[k + 1] = a[k];
a[k] = temp;
}
}
}
console.log(a);
console.timeEnd()
选择排序
var arr = [1, 3, 2, 5, 4, 7, 6];
console.time();
function selectsort(a) {
var minindex = 0;
var temp = null;
for (var i = 0; i < a.length; i++) {
minindex = i;2
for (var k = i + 1; k < a.length; k++) {
if (a[k] < a[minindex]) {
minindex = k;
}
}
temp = a[i];
a[i] = a[minindex];
a[minindex] = temp;
}
console.log(a);
}
selectsort(arr);
console.timeEnd();
快速排序
var res = [1, 18, 16, 0, 4, 2, 7, 5];
function qucksort(r) {
if (r.length < 2) {
return r;
}
var centerindex = parseInt(r.length / 2);
var num = r.splice(centerindex, 1)[0];
var left = [];
var right = [];
for (var i = 0; i < r.length; i++) {
if (r[i] < num) {
left.push(r[i]);
}
else {
right.push(r[i]);
}
}
return qucksort(left).concat(num).concat(qucksort(right));
}
console.log(qucksort(res));