title: Why .setUTCHours returns different results?
body: <p>I have the following function which should read time in UTC and return in local time, and sometimes it adds 2 hours(correctly) and sometimes 4 hours. Why is that? What can be the reason?</p>
  
  <pre><code>value = time in UTC
  
  toLocalDate(value) {
    let string = new Date(value);
    let date = new Date();
  
    date.setUTCFullYear(string.getFullYear(), string.getMonth(), string.getDate());
    date.setUTCHours(string.getHours(), string.getMinutes(), string.getSeconds(), 0);
  
    return date;
  }
  </code></pre>
  
  <p>Example data:</p>
  
  <pre><code>Value: 2017-08-23T06:00:00
  Expected output: Wed Aug 23 2017 08:00:00 GMT+0200 (Central European Daylight Time)
  Output: Wed Aug 23 2017 10:00:00 GMT+0200 (Central European Daylight Time)
  </code></pre>
  
  <p>On some devices(like my phone or computer) it returns the expected output.
  On my friend's device(mobile) it returns the second output.</p>