본문 바로가기

Web

[JavaScript] Promise 객체(브라우저 호환성 확인)

비동기 방식인 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.");
		            }
		        });
	    		
	    	});	    	
	    }

 

Internet Explorer 오류

그래서 Mozilla에서 호환성 여부를 확인했는데, 역시나 Internet Explorer에서는 쓸 수 없었습니다.

모든 브라우저에서 사용을 할 수 있으면 좋겠지만, 그렇지 않은 경우도 많습니다.

그러므로 꼭 브라우저 호환성을 확인해보시기 바랍니다.

 

Promise의 브라우저 호환성

Reference : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Promise