비동기 방식인 Ajax를 두 번 호출해야할 일이 있었습니다.
그래서 비동기 작업 결과에 따른 처리를 하기위해 Promise 객체를 사용했는데, Chrome에서는 정상 동작하지만 Internet Explorer에서는 동작하지 않았습니다.
function fn_select() {
return new Promise(function(resolve, reject){
var $target = $("#select");
var innerHtml = "";
$.ajax({
url : "/select.do",
type : "get",
data : {'seq' : seq},
success : function (data) {
},
error : function (data) {
alert("error.");
}
});
});
}
function fn_update() {
return new Promise(function(resolve, reject){
$.ajax({
url : "/update.do",
type : "get",
data : {'seq' : Seq},
success : function (data) {
},
error : function (data) {
alert("error.");
}
});
});
}
그래서 Mozilla에서 호환성 여부를 확인했는데, 역시나 Internet Explorer에서는 쓸 수 없었습니다.
모든 브라우저에서 사용을 할 수 있으면 좋겠지만, 그렇지 않은 경우도 많습니다.
그러므로 꼭 브라우저 호환성을 확인해보시기 바랍니다.
Reference : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Promise