Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Javascript and Dates

Javascript and Dates

Scheduled Pinned Locked Moved The Lounge
javascriptdatabasecomdesignfunctional
22 Posts 14 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Marc Clifton

    I want to commit a crime that may put me on death row. 1. Months start at 0. January is 0. WTF. I realize this is probably because whatever sh*t for brains wrote Date was thinking, oh, month should be an index so month[0] == 'January". Idiot. 2. Changes date even though I'm only providing a date, so the time defaults to 0 Zulu, which means that at the moment, today is yesterday somewhere in the world, so all my dates are back one day. Same UI later in the day shows the correct date. :mad: Marc

    Imperative to Functional Programming Succinctly Contributors Wanted for Higher Order Programming Project!

    K Offline
    K Offline
    Kent Sharkey
    wrote on last edited by
    #13

    The method is deprecated, but try mydate.getYear() sometime ;) :doh:

    TTFN - Kent

    1 Reply Last reply
    0
    • D dandy72

      Not that I use it, but I thought arrays in VB were 1-based, and people hate it for that. Well, that and many other reasons. Are you advocating we should follow the VB model? :-) month[0] being January makes sense to me. That said, an enum defining month names starting at 1 also make sense to me. I see no way of ever reconciliating these sort of idiosyncrasies, unfortunately.

      B Offline
      B Offline
      Bruce Patin
      wrote on last edited by
      #14

      That would be somewhat OK, if it were consistent, in which case the first day of the month would be day 0, and the first year of a century would be 0 + the century. But it is not consistent and, by convention, months and days are already numbers starting with 1. Why confuse things just because you are a programmer who likes to put the months in an array starting with a zero offset? In that case, that offset should be calculated and used internally, not by forcing everyone else to add 1 to the month everywhere it is used. I agree with the poster that some common standards were made by people exhibiting ID-10-T errors.

      D 1 Reply Last reply
      0
      • M Marc Clifton

        I want to commit a crime that may put me on death row. 1. Months start at 0. January is 0. WTF. I realize this is probably because whatever sh*t for brains wrote Date was thinking, oh, month should be an index so month[0] == 'January". Idiot. 2. Changes date even though I'm only providing a date, so the time defaults to 0 Zulu, which means that at the moment, today is yesterday somewhere in the world, so all my dates are back one day. Same UI later in the day shows the correct date. :mad: Marc

        Imperative to Functional Programming Succinctly Contributors Wanted for Higher Order Programming Project!

        S Offline
        S Offline
        scmtim
        wrote on last edited by
        #15

        My favorite Javascript date "feature" is where Jan 32, 2015 rather than throwing an error will just assume you meant Feb 1, 2015.

        1 Reply Last reply
        0
        • M Marc Clifton

          I want to commit a crime that may put me on death row. 1. Months start at 0. January is 0. WTF. I realize this is probably because whatever sh*t for brains wrote Date was thinking, oh, month should be an index so month[0] == 'January". Idiot. 2. Changes date even though I'm only providing a date, so the time defaults to 0 Zulu, which means that at the moment, today is yesterday somewhere in the world, so all my dates are back one day. Same UI later in the day shows the correct date. :mad: Marc

          Imperative to Functional Programming Succinctly Contributors Wanted for Higher Order Programming Project!

          L Offline
          L Offline
          Leng Vang
          wrote on last edited by
          #16

          Perhaps you don't like zero-base array. Perhaps Pascal/Delphi suits you better? It is the only language with 1 base array I know off.:cool:

          M 1 Reply Last reply
          0
          • L Leng Vang

            Perhaps you don't like zero-base array. Perhaps Pascal/Delphi suits you better? It is the only language with 1 base array I know off.:cool:

            M Offline
            M Offline
            Marc Clifton
            wrote on last edited by
            #17

            Isn't BASIC 1-index too? And I'm quite happy with 0-based arrays. However, a month number is not an index. It is a human-readable abstraction starting with "1". Therefore, when I ask for the month in Javascript, I do NOT expect to get 0 for January. By Javascript's logic, the first day of the month should be 0!!!! Marc

            Imperative to Functional Programming Succinctly Contributors Wanted for Higher Order Programming Project!

            1 Reply Last reply
            0
            • B Bruce Patin

              That would be somewhat OK, if it were consistent, in which case the first day of the month would be day 0, and the first year of a century would be 0 + the century. But it is not consistent and, by convention, months and days are already numbers starting with 1. Why confuse things just because you are a programmer who likes to put the months in an array starting with a zero offset? In that case, that offset should be calculated and used internally, not by forcing everyone else to add 1 to the month everywhere it is used. I agree with the poster that some common standards were made by people exhibiting ID-10-T errors.

              D Offline
              D Offline
              dandy72
              wrote on last edited by
              #18

              I hear you, but ultimately, a month number is not an array index. The dumb thing is using them as such...'cuz then, somebody at some point has no choice but to add or subtract 1 because we're dealing with different "currencies". X|

              B 1 Reply Last reply
              0
              • D dandy72

                Not that I use it, but I thought arrays in VB were 1-based, and people hate it for that. Well, that and many other reasons. Are you advocating we should follow the VB model? :-) month[0] being January makes sense to me. That said, an enum defining month names starting at 1 also make sense to me. I see no way of ever reconciliating these sort of idiosyncrasies, unfortunately.

                J Offline
                J Offline
                James Lonero
                wrote on last edited by
                #19

                Wasn't Javascript born out of C/C++? Then, that is why lists and arrays begin at 0 and not 1.

                D 1 Reply Last reply
                0
                • J James Lonero

                  Wasn't Javascript born out of C/C++? Then, that is why lists and arrays begin at 0 and not 1.

                  D Offline
                  D Offline
                  dandy72
                  wrote on last edited by
                  #20

                  Y...yes...? I don't think I was questioning this.

                  1 Reply Last reply
                  0
                  • D dandy72

                    I hear you, but ultimately, a month number is not an array index. The dumb thing is using them as such...'cuz then, somebody at some point has no choice but to add or subtract 1 because we're dealing with different "currencies". X|

                    B Offline
                    B Offline
                    Bruce Patin
                    wrote on last edited by
                    #21

                    I agree. That is why I also agree with the original poster that a JavaScript month should not be starting with zero. I was just trying to say that, if one is being aggravatingly dumb, at least be consistent about it. I wonder just who it was who made the decision to make months start with zero, and what he is doing now. Is he sitting in an easy chair with his tea and crumpets, musing about his wonderful history, or is he hiding in a safehouse in fear from those of us who didn't like his work. :-)

                    D 1 Reply Last reply
                    0
                    • B Bruce Patin

                      I agree. That is why I also agree with the original poster that a JavaScript month should not be starting with zero. I was just trying to say that, if one is being aggravatingly dumb, at least be consistent about it. I wonder just who it was who made the decision to make months start with zero, and what he is doing now. Is he sitting in an easy chair with his tea and crumpets, musing about his wonderful history, or is he hiding in a safehouse in fear from those of us who didn't like his work. :-)

                      D Offline
                      D Offline
                      dandy72
                      wrote on last edited by
                      #22

                      He's probably fixing broken VB code. At least that's the punishment I'd come up with.

                      1 Reply Last reply
                      0
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • World
                      • Users
                      • Groups