title: Why hasOwnProperty returns false?
body: <p>I cant understand why hasOwnProperty return false on the following scenario:</p>
  
  <p>Client side:</p>
  
  <pre><code>&lt;html&gt;
      &lt;head&gt;
  
          &lt;script type="text/javascript"&gt;
  
              var client = [
                              {"clientName":"", "clientNickName": ""},
                              {"clientName":"", "clientNickName": ""},
                              {"clientName":"", "clientNickName": ""}
                           ];         
  
  
  
              function onSubmit() {
  
                  // update data
                  client[0].clientName = "AAA";
                  client[0].clientNickName = "BBB";
                  client[1].clientName = "CCC";
                  client[1].clientNickName = "DDD";
                  client[2].clientName = "EEE";
                  client[2].clientNickName = "FFF";               
  
                  // create request
                  xmlhttp=new XMLHttpRequest();                   
                  xmlhttp.open("POST","~/process_post",true);     
                  xmlhttp.setRequestHeader("Content-Type", "application/json");               
  
                  // send
              xmlhttp.send(JSON.stringify(client));                                   
  
                  return true;
              }
  
          &lt;/script&gt;
  
      &lt;/head&gt;
  
      &lt;body &gt;
  
          &lt;form action="http://127.0.0.1:8081/process_post" method="POST"&gt;                                        
  
              User Name:
              &lt;input type="text" name="userName"&gt;
              &lt;br&gt;    
              Nick Name:
              &lt;input type="text" name="nickName"&gt;
              &lt;br&gt;    
  
              &lt;input type="submit" value="Submit" onclick="return onSubmit()"&gt;
              &lt;br&gt;                        
          &lt;/form&gt;
  
      &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>server side:</p>
  
  <pre><code>var express = require('express');
  var app = express();
  var bodyParser = require('body-parser');
  app.use(bodyParser.json());
  
  app.use(express.static('public'));
  
  
  app.post('/process_post', function (req, res) {   
  
     var x = req.body;
     if  (x[0].hasOwnProperty('clientName')) {
      console.log("yes: clientName exsists");
     }
  
     console.log("result: " + req.body);
  })
  
  
  
  var server = app.listen(8081, function () {
  
    var host = server.address().address
    var port = server.address().port
  
    console.log("Example app listening at http://%s:%s", host, port)
  
  })
  </code></pre>
  
  <ul>
  <li><p>I have updated the Q, after get some comments which didnt help.</p></li>
  <li><p>Why the server does not parse the json data properly ?
  The server crash when calling hasOwnProperty on x[0]:
  "TypeError: Cannot read property 'hasOwnProperty' of undefined"</p></li>
  </ul>
  
  <p>Thanks</p>