title: Parse a date string in a specific locale (not timezone!)
body: <p>With MomentJS, if necessary I can set a locale on a specific moment instance (rather than globally) using <code>.locale</code> (or <code>.lang</code> in older versions). How can I parse a string using a specific locale other than the global one? Since the <code>moment</code> function itself is what we use for parsing, and there doesn't seem to be a <code>.set</code> variant that does full parsing?</p>
  
  <p>E.g.:</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false">
  <div class="snippet-code">
  <pre class="snippet-code-js lang-js prettyprint-override"><code>// Assume the default locale is 'en' (just in case, I'll set it for the snippet)
  moment.locale('en');
  
  // I have this string that's in the French locale
  var str = "30 Avril 2015";
  
  // Parsing it fails
  var m = moment(str, "DD MMMM YYYY");
  snippet.log(m.format("YYYY-MM-DD")); // "Invalid Date"</code></pre>
  <pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.9.0/moment-with-locales.js"&gt;&lt;/script&gt;
  &lt;!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 --&gt;
  &lt;script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"&gt;&lt;/script&gt;</code></pre>
  </div>
  </div>
  </p>