打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
web前端分享前端javascript练习题一
web前端教程将会为大家持续分享前端javascript练习题系列。
Math 对象 

1.编写一个函数,获得一个十六进制的随机颜色的字符串(例如:#20CD4F)
方法:

function f2(){

    var str="0123456789abcdef";

    var color="#";

    for(var i=0;i<6;i++){

        var num=Math.floor(Math.random()*str.length);

        color=color+str[num];

    }

    console.log(color);}f2();

date对象

数码时钟
思路分析:将时分秒的图片,按照一定规则命名,方便后续根据时间设置图片路径

方法:

<div id="pic">

    <img src="img/0.png" alt="" />

    <img src="img/0.png" alt="" />

    <span></span>

    <img src="img/0.png" alt="" />

    <img src="img/0.png" alt="" />

    <span></span>

    <img src="img/0.png" alt="" />

    <img src="img/0.png" alt="" />

    <span></span></div>

<script>

    function f1(){

        var str="";

        //通过标签获取所有的图片存放在变量imgid中

        var imgid=document.getElementsByTagName("img");

        var oDate = new Date(); //创建时间对象

        var h=oDate.getHours();  //分别去获取当前的时分秒

        var fen=oDate.getMinutes();

        var miao= oDate.getSeconds();

        var h1=h>=10?h:"0"+h;  //保证都是由2位组成

        var fen1=fen>=10?fen:"0"+fen;

        var miao1=miao>=10?miao:"0"+miao;

        str=str+h1+fen1+miao1;  //组合成一个新的字符串

        for(var i=0;i<str.length;i++){  //遍历字符串

            //类比src="img/0.png";

            imgid[i].src='img/'+str[i]+'.png'; //设置每个图片的src路径

        }

    }

    setInterval(f1,1000);  //定时器  后一个参数以毫秒为单位

函数的封装

封装方法:将函数作为对象的参数

eg1:.判断某年份是否为闰年,将日期格式化输出 “2015|08|24”,获得某个月份的天数,判断两个日期相差的天数,获得N天以后的日期

var dateUtil = {

   isLeapYear:function(year){

      if(year%4==0&&year%100!=0 || year%400==0){

         return true;

      }

      return false;

   },

   formatDate:function(date,str){

      var year = date.getFullYear();

      var month = date.getMonth()+1;

      var day = date.getDate();

      if(month < 10){

         month = "0"+month;

      }

      if(day < 10){

         day = "0" + day;

      }

      var ss = year+str+month+str+day

      return ss;

   },

   getDays:function(date){

      var year = date.getFullYear();

      var month = date.getMonth()+1;

      switch(month){

         case 2:

            if(dateUtil.isLeapYear(year)){

               return 29;

            }

            return 28;

            break;

         case 4:

         case 6:

         case 9:

         case 11:

            return 30;

            break;

         default:

            return 31;

      }

   },

   getDiffDays:function(date1,date2){

      //两个日期相减会得到一个相差的毫秒数

      //相差的天时分秒

      var ss = Math.abs((date2-date1)/1000);

      var day = Math.floor(ss/24/3600);

      var hour = Math.floor(ss/3600%24);

      var minute = Math.floor(ss/60%60);

      var second = Math.floor(ss%60);

      return day+"天"+hour+"时"+minute+"分"+second+"秒";

   },

   getNDays:function(n){

      var oDate = new Date();

      oDate.setDate(oDate.getDate()+n);

      return oDate;

   }};

DOM和BOM
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
点滴积累【JS】
如何才能在asp中获取文章中的第一张图片地址
Jquery教你写一个简单的轮播.
EXTJS GridPanel 右键复制当前选中单元格
html5 实现端午节领卷输入手机号验证效果
性能优化——图片压缩、加载和格式选择
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服