数美笔试题目总结

数美的笔试题目,自己太菜了:

1 题目:函数输出,这里要特别注意函数里面定义的变量name提升;

var name = 'zxx';
function aa(){
    console.log(name);------undefined
    var name = 'lcc';
    if(typeof name ==='undefined'){----------true
        var name = 'lcc';
        console.log('hello' + name);
    }else{
        console.log('goodbye' + name);
    }
};
aa();
上面的函数等同于下面这个

var name = 'zxx';
function aa(){
    var name;
    console.log(name);
    name = 'lcc';
    if(typeof name ==='undefined'){
        var name = 'lcc';
        console.log('hello' + name);
    }else{
        console.log('goodbye' + name);
    }
};
aa();
2 题目

判断一个数奇偶性

function OldOrEven(i){
    var num = i%2 == 0?true:false;
    console.log(num);
}
OldOrEven(4);
3 题目 这里有一个slice()方法,可以获取原数组,不要很Low的直接写 arr = arr1;

concat()方法,用于连接多个数组,不会改变原来数组;

push()方法,用于向数组末尾添加多个元素,返回新数组的长度;

方法一:

function Duplicator(arr){
    var arrDup = arr.slice();
    var newArr = arrDup.concat(arr);
    console.log(newArr);
}
Duplicator([1,2,3,4]);

方法二:

function Duplicator(arr){
    var arrDup = arr.slice();
    for(var i = 0;i<arrDup.length;i++){
        arr.push(arrDup[i]);
    }
    console.log(arr);
}
Duplicator([1,2,3,4]);
4  判断一个数是否为素数

function isNumberPrime(num){
    for(var j = 2;j<num;j++){
        if(num%j == 0){
            console.log('false');
        }else(
             console.log('true')
        )
    }
}
isNumberPrime(5);
5这个感觉不太对;

function parseURL(URL){
    var aa = URL.split(":");
    var newString = {};
    newString.protocol = aa[0];
    newString.host = aa[1].substring(2);
    newString.port = aa[2].substring(0,4);
    newString.path = aa[2].substring(4);
    console.log(newString);
}
parseURL('http://location:3000/search');


你可能感兴趣的:(数美笔试题目总结)