언어 및 프레임워크/Javascript (ES6)

Javascript - Internet Explorer 11 문법 에러 관련

개발참치 2021. 7. 13.

문제

Javascript 사용 중 IE (Internet Explorer) 에서 통하지 않는 문법이 몇 개 있습니다.

 

-> EDGE는 제외

 

비록 IE 11이 마지막이고 2022년 6월 15월부로 공식 지원 종료지만

작성일자 기준으로 IE는 여전히 대중적으로 사용중이니 해당 에러와 해결 방법을 이야기하려 합니다.

 

분석

 

1. 람다식 ( => ) 

 

람다식을 사용한 script를 Explorer 환경에서 본다면, 

 

람다식으로 인한 구문 오류

 

위와 같은 오류를 보실 수 있습니다.

 

Explorer 환경에서는 "=>"라는 문법 자체를 Explorer 에서는 인식하지 못하기 때문에 생기는 에러입니다. 

 

2. includes 함수

 

마찬가지로 Explorer 환경에서는

includes 사용으로 인한 오류

 

위와 같은 오류가 발생합니다.

 

Explorer 환경에서 includes 함수를 지원하지 않습니다..

 

 

해결

 

1. 람다식 ( => ) 

 

Array.sort((a,b)=>{return a-b});

 

위와 같은 람다식 사용을 아래와 같은 형식으로 바꿔주면 됩니다.

 

Array.sort(function(a,b) {return a-b});

 

2. includes 함수

 

if (Array.inculdes('A')) {
	return 1
}

 

위와 같은 includes 사용을 아래와 같이 indexOf 사용으로 바꿔주면 됩니다.

 

if (Array.indexOf('A') > 0) {
	return 1
}

 

 

댓글