美文网首页
Math数组Date

Math数组Date

作者: 进击的前端_风笑影 | 来源:发表于2017-08-04 12:14 被阅读0次

    1、写一个函数,返回从min到max之间的 随机整数,包括min不包括max

      function getRandom(min,max){
            return  Math.floor( min +  Math.random()*(max-min));
      } 
      console.log(getRandom(0.5,9.5));
    

    2、写一个函数,返回从min都max之间的 随机整数,包括min包括max

      function getRandom(min,max){
          return  Math.floor( min +  Math.random()*(max-min+1));
       } 
        console.log(getRandom(1,10));
    

    3、写一个函数,生成一个长度为 n 的随机字符串,字符串字符的取值范围包括0到9,a到 z,A到Z。

    Paste_Image.png

    4、写一个函数,生成一个随机 IP 地址,一个合法的 IP 地址为 0.0.0.0~255.255.255.255

    Paste_Image.png

    5、写一个函数,生成一个随机颜色字符串,合法的颜色为#000000~ #ffffff

    Paste_Image.png

    数组任务

    1、数组方法里push、pop、shift、unshift、join、splice分别是什么作用?用 splice函数分别实现push、- --pop、shift、unshift方法

    • push方法:添加一个数组元素到数组的末端(即下标最大端);

    • pop方法: 删除数组中下标最大的那个元素;

    • shift方法: 删除数组中下标最小的那个元素

    • unshift方法: 添加一个数组元素到数组的前端(即下标最小端);

    • join方法: 返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开来。

    • splice方法: 从数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。

      • 参数1:指定从数组中移除元素的开始位置;
      • 参数2:要移除的的元素的个数,如果不移除元素,则将该参数设置为0;
      • 参数3:要在所移除的元素的位置上插入的新元素;

    splice函数实现push方法

     function spliceMethod(arr,addnum){
            var res = arr.splice(arr.length,0,addnum);
            return res;
        }
         var arr = [1,2,3];
        addarr = [4,5,6];
        spliceMethod(arr,addarr);
        console.log(arr);
    

    splice函数实现pop方法

    function spliceMethod(arr){
      //splice 函数实现pop方法
      var res = arr.splice(arr.length-1,1);
      //res为删除元素组成的数组
      console.log(res);
      return res;
    }
    var arr = [1,2,3];
    spliceMethod(arr);
    console.log(arr);
    

    splice函数实现shift方法

    function spliceMethod(arr){
      //splice 函数实现shift方法
      var res = arr.splice(0,1);
      //res为删除元素组成的数组
      console.log(res);
      return res;
    }
    var arr = [1,2,3];
    spliceMethod(arr);
    console.log(arr);
    

    splice函数实现unshift方法

    function spliceMethod(arr,addnum){
      //splice 函数实现unshift方法
      var res = arr.splice(0,0,addnum);
      return res;
    }
    var arr = [1,2,3];
    var addnum = [1,2,3];
    spliceMethod(arr,addnum);
    console.log(arr);
    

    2、写一个函数,操作数组,数组中的每一项变为原来的平方,在原数组上操作

    function squareArr(arr){
       return arr.map(function (e,i,arr){
            arr[i] = e*e;
        });
    }
    var arr = [2, 4, 6]
    squareArr(arr)
    console.log(arr) // [4, 16, 36]
    

    3、写一个函数,操作数组,返回一个新数组,新数组中只包含正数,原数组不变

    Paste_Image.png

    Date 任务

    1、 写一个函数getChIntv,获取从当前时间到指定日期的间隔时间

    Paste_Image.png

    2、把hh-mm-dd格式数字日期改成中文日期

    function getChsDate(s) {
            var arr = ["零","一","二","三","四","五","六","七","八","九","十","十一","十二","十三","十四","十五","十六","十七","十八","十九","二十","二十一","二十二","二十三","二十四","二十五","二十六","二十七","二十八","二十九","三十","三十一"]
            var time = s.split('-');
            var year = time[0].split('');
            var month = time[1];
            var day = time[2];
            var newYear = arr[year[0]]+arr[year[1]]+arr[year[2]]+arr[year[3]];
            var newMonth = arr[parseInt(month)];
            var newDay = arr[parseInt(day)];
            return newYear+"年"+newMonth+"月"+newDay+"日";
        }
        var str = getChsDate('2015-01-08');
        console.log(str);  // 二零一五年一月八日
    

    3、写一个函数,参数为时间对象毫秒数的字符串格式,返回值为字符串。假设参数为时间对象毫秒数t,根据t的时间分别返回如下字符串:

    刚刚( t 距当前时间不到1分钟时间间隔)
    3分钟前 (t距当前时间大于等于1分钟,小于1小时)
    8小时前 (t 距离当前时间大于等于1小时,小于24小时)
    3天前 (t 距离当前时间大于等于24小时,小于30天)
    2个月前 (t 距离当前时间大于等于30天小于12个月)
    8年前 (t 距离当前时间大于等于12个月)

    function friendlyDate(time){
            var now = Date.now();
            var date = (now-time)/(1000*60);//分钟数
            if(date>=(60*24*30*12)){
                console.log("8年前");
            }else if(date>=(60*24*30)){
                console.log("2个月前");
            }else if(date>=60*24){
                console.log("3天前");
            }else if(date>=60){
                console.log("8小时前");
            }else if(date>=1){
                console.log("3分钟前");
            }else if(date<1){
                console.log("刚刚");
            }
        }
        var str = friendlyDate( '1484286699422' );
        var str2 = friendlyDate('1483941245793');
    

    相关文章

      网友评论

          本文标题:Math数组Date

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