前端问题解析

来源:互联网 发布:怎样改淘宝密码 编辑:程序博客网 时间:2024/06/04 19:18

1.JS中DOM节点操作,添加,删除,插入,查询,创建,复制节点

    //1.创建节点    document.createElement();//创建一个新元素    document.createTextNode();//创建一个文本节点    //2.查找节点    document.getElementById('');//按id查找    document.getElementsByClassName('');//按类名查找    document.getElementsByTagName('');//按节点名称查找    document.getElementsByName('');//按name查找    //3复制节点    cloneNode(true)//true:深复制,复制该元素以及后代元素    cloneNode(false)//false:浅复制,只复制节点本身    //4节点操作    appendChild(node)//在末尾添加元素    insertBefore(node,targrt)//在targrt几点之前插入元素    removeChild(node)//移除父节点的某个子节点    replaceChild(newnode,oldnode)//将父元素的某个子元素替换为新元素

2.实现一个函数clone,可以对JavaScript中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制。

function clone(obj){        var o;        switch (typeof obj){            case 'undefined':                break;            case 'string':                o=obj+'';                break;            case 'number':                o= obj+0;                break;            case 'boolean':                o = obj;                break;            case 'object':                if(obj === null){                    o = null;                }else{                     if(Object.prototype.toString.call(obj).slice(8, -1) === "Array"){                        o = [];                        for(var i=0;i<obj.length;i++){                            o.push(clone(obj[i]));                        }                     }else{                        o={};                        for(var j in obj){                            o[j] = clone(obj[j]);                        }                     }                }                break;            default:                o = obj;                break;        }        return o;    }

3.javascript的typeof返回哪些数据类型

string,number,boolean,undefined,object,function

4.js 实现数组去重

数组去重这个问题好像还挺多问到的,这个问题并不是很困难,方法也有很多,这里我只写了两种。

    function sort1(){//方法1        var arr1 = [0,1,2,2,3,5,8,8,4,4,6];        var arr2 = [];        for(var i=0;i<arr1.length;i++){            if(arr2.indexOf(arr1[i]) < 0){                arr2.push(arr1[i]);            }        }        return arr2;    }    function sort2(){//方法2        var arr1 = [0,1,2,2,3,5,8,8,4,4,6];        var arr2 = [];        arr1.sort(function (a,b) {            return a-b;        })        for(var i=0;i<arr1.length-1;i++){            if(arr1[i] != arr1[i+1]){                arr2.push(arr1[i]);            }        }        arr2.push(arr1[arr1.length-1]);        return arr2;    }

5.统计一行字符串中字母个数或出现次数最多的字母

var str = “aaaabbbccccddfgh”;
var obj = {};
for(var i=0;i

0 0
原创粉丝点击