modular JavaScript clock

modular approach to javascript clock

by ndw5015

HTML

<div id="clock"></div>

JavaScript

(function() {
/*
    module approach to javascript clock
  */
  var myModule = (function() {
      'use strict';

      var currentTime = new Date();

      //pass hours and meridiem as arguments
      //set hour function
      function setHour(hours,meridiem){
        hours = currentTime.getHours();
        hours = hours < 10 ? '0' + hours : hours;

        if(hours > 12){
          hours = hours - 12;
          meridiem = 'PM';
        }
        else{
        	meridiem = 'AM';
        }

        if(hours == 0){
          hours = 12;
        }

        //return the hours and meridiem argument as an object
        return{
          hours: hours,
          meridiem: meridiem
        }
      }

      //pass minutes as an argument
      //set minutes function
      function setMinutes(minutes){
        minutes = currentTime.getMinutes();
        minutes = minutes < 10 ? '0' + minutes : minutes;
        return minutes;
      }

      //passseconds as an argument
      //set seconds function
      function setSeconds(seconds){
        seconds = currentTime.getSeconds();
        seconds = seconds < 10 ? '0' + seconds : seconds;
        return seconds;
      }

      //return functions as objects
      return{
        setHour : setHour,
        setMinutes : setMinutes,
        setSeconds: setSeconds
      }

  }());

  /* grab hours meridiem object arguments by drilling down 
      from myModule function to setHours function to argument
  */
  console.log(myModule.setHour().hours);
  console.log(myModule.setHour().meridiem);
  //get minutes object by dilling down
  console.log(myModule.setMinutes());
  //get seconds object by drilling down
  console.log(myModule.setSeconds());




    //find clock div id
    var clockDiv = document.getElementById('clock');

    var h = myModule.setHour().hours;
    var m = myModule.setMinutes();
    var s = myModule.setSeconds();
    var meridiem = myModule.setHour().meridiem;


  //set new function to pass to set Interval
  function...