jsdom元素、数组以及排序

    xiaoxiao2022-07-07  196

    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));
    最新回复(0)