javaScript 백틱(`) 을 IE 등에서 사용할 수 있는 방법이 있나요??
안녕하세요.
javaScript 백틱(`) 을 IE 등에서 사용할 수 있는 방법이 있나요??
let text = "TEST TEXT"
console.log(`${text} 는 시험입니다.` )
같이 템플릿 리터럴을 사용하여 표기하고 싶은데 IE 에서 정상 동작하지 않습니다.
방법이 있을까요??
기본적으로 IE는 템플릿 리터럴을 지원하지 않습니다.
브라우저 지원현황은 아래 링크를 통해 확인 할 수 있습니다.
프로젝트 성격상 꼭 IE를 지원해야 한다면
Babel의 transform-template-literals 플러그인을 이용해 컴파일 후 사용하시면 됩니다.
또는, String.prototype.concat()을 활용하여 직접 IE에서만 동작할 코드를 만들어 주셔도 될 듯 합니다.
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/concat
let text = "TEST TEXT"
console.log(text.concat('는 시험입니다.'))
안녕하세요
백틱(`)은 ECMA2015(ES6) 명세에 있는 Template literals 입니다. IE는 ES5까지만 가능하므로 지원하지 않습니다.
백틱으로 코딩하는 방법은 babel을 이용하는 방법이 있습니다.
1. Babel을 사용할 때는 컴파일이 선행되어야 합니다.
node 환경이 구성되어 있지 않으면 적용하기 쉽지 않지만 추천하는 방법입니다.
- Babel template literals : https://babeljs.io/docs/en/babel-plugin-transform-template-literals
2. script 태그로 하는 방법
- Babel의 standalone 버전입니다. babel.min.js 는 로컬에 다운받아 사용하셔도 됩니다.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script> <script type="text/babel"> let text = "TEST TEXT" console.log(`${text} 는 시험입니다.` ); </script> </head> <body> </body> </html>