美文网首页
分享几道javaScript题

分享几道javaScript题

作者: isSunny | 来源:发表于2019-07-25 18:28 被阅读0次

    1.已知字符串foo="get-element-by-id",写一个function将其转化成驼峰表示“getElementById”

    var  foo="get-element-by-id";
            function getUpperCase(str){
                var arr = str.split("-");
                for(var i=1;i<arr.length;i++){
                    console.log(typeof arr[i])
                    arr[i] = arr[i].charAt(0).toUpperCase()+arr[i].slice(1); 
                    
                }
                return arr.join("");
            }
            console.log(getUpperCase(foo));//getElementById
    

    2.以YYY-MM-DD的方式,输出当天的日期,比如当天是2019年7月25日,则输出2017-07-25

     var date = new Date();
     var year = date.getFullYear();
    var month = date.getMonth()+1;
    month = month<"10"?"0"+month:month;
    var day = date.getDate();
    day = day<"10"?"0"+day:day;
    var curDay = year+"-"+month+"-"+day;
    console.log(curDay);
    

    3.有这样一个url("http://**.com/item.htm?name=ldy&num=2&address=&telephone=1234&word";
    ),写一段javascript提取URL中的GET参数。将其按“key:value”形式储存在对象中。

    var url ="http://**.com/item.htm?name=ldy&num=2&address=&telephone=1234&word";
    function getUrl(url){
         var obj = {}
         var newUrl = url.split("?")[1];
         var urlArr = newUrl.split("&");
         for(var i=0;i<urlArr.length;i++){
                    var key = urlArr[i].split("=");
                    console.log(key[1])
                    obj[key[0]]=key[1];
          }
               return obj;
    }
    console.log(getUrl(url));
    //{name: "ldy", num: "2", address: "", telephone: "1234", word: undefined}
    

    4.用javascript随机选取10-100之间的10个数字,存入数组,然后排序。

     var inArray = [];
    function getRandom(start,end){//获取随机数
          return Math.floor(Math.random()*(end-start+1)+start);
    }
    for(var i=0;i<10;i++){
           inArray.push(getRandom(10,100));
    }  
    
    inArray.sort(function(a,b){
          return a-b;
    })
    console.log(inArray)
    

    5.写一个sum方法,例如sum(2,3)和sum(2)(3)都可以正常工作

    function sum(x){
                if(arguments.length ===2){
                    return arguments[0]+arguments[1];
                }else{
                    return function(y){
                        return x+y;
                    }
                }
    }
    console.log(sum(2,3));//5
    console.log(sum(2)(3));//5
    

    注解:
    1.split()方法用于把一个字符串分割成字符串数组。
    2.join()方法用于把数组中的所有元素放入一个字符串。
    3.获取随机数方法Math.floor(Math.random()*(end-start+1)+start)

    参考《前端程序员面试秘籍》

    相关文章

      网友评论

          本文标题:分享几道javaScript题

          本文链接:https://www.haomeiwen.com/subject/qtihrctx.html