title: Is it safe in Javascript to assume the existence of "constructor" property on variables with values other than "null" or "undefined"?
body: <p>I was wondering if it is safe to assume that in JavaScript a variable will always have a "constructor" property if its value is not "null" or "undefined". </p>
  
  <p>I ran into a situation where I had to check if a variable is defined and that if it is an array and if so check if its length is > 0:</p>
  
  <pre><code>if(variable &amp;&amp; variable.constructor === Array &amp;&amp; variable.length &gt; 0) {
    ...loop through the array
  }
  </code></pre>
  
  <p>Am I right to assume that variable will <strong>always</strong> have a constructor if it is not "undefined" or "null"?</p>