昨今、XMLHttpRequestを利用して、Ajaxを実現する場合、jQueryなどライブラリを使うことが多いですが、諸処の事情により、生で書く必要がある場合、以下のように書くと良いでしょうか。とりあえずメモ。

// XMLHttpRequestを発行する
function http_get(url, onSuccess, onError) {
  var xhr = new XMLHttpRequest();
  xhr.open('GET', url);
  xhr.onreadystatechange = function (r) {
    if (xhr.readyState == 4) {
      if (xhr.status == 200 || xhr.status == 201) {
        onSuccess(xhr.responseText, xhr);
      } else {
        onError(xhr);
      }
    }
  };
  xhr.send(null);
}