IT TIP

현재 JavaScript의 'let'키워드를 지원하는 브라우저는 무엇입니까?

itqueen 2020. 11. 1. 19:03
반응형

현재 JavaScript의 'let'키워드를 지원하는 브라우저는 무엇입니까?


저는 앱을 개발 중이며 Internet Explorer에 대해 걱정할 필요가 없으며 Internet Explorer1에없는 A + 등급 브라우저에있는 일부 기능을 살펴보고있었습니다.

이 기능 중 하나는 JavaScript의 let 키워드입니다.

Firefox 3.6 ( 사용자 에이전트 문자열 : Mozilla / 5.0 (Windows; U; Windows NT 5.1; en-US; rv : 1.9.2) Gecko / 20100115) 에서 작동하는 'let'예제를 얻을 수없는 것 같습니다 . Firefox / 3.6 (.NET CLR 3.5.30729)). 나는 SyntaxError: missing ; before statement실행할 때 얻는다 let foo = "bar".

그렇다면 let 키워드를 지원하는 브라우저는 무엇입니까? (아니면 내가 뭘 잘못하고 있니?)


편집 : letconst모든 현대적인 브라우저에서 지원과의 일부된다 ECMAScript를 2015 년 (ES6) 사양.

당신은 IE11 아래에 아무것도를 지원하기 위해 필요하지 않습니다 기본적으로 경우 letconst현재 사용하는 것이 안전합니다.

IE11 있는 작은 특질있어 let함께 사용하면 for루프, 변수가 결합되지 않은 for것처럼 동작합니다, 당신이 기대하는 것처럼 블록 var한 ...

참조 : letconst 지원.


2010 년의 오래되고 오래된 답변 : 이러한 확장은 ECMA 표준이 아니며 Mozilla 구현에서만 지원됩니다.

브라우저 환경 에서 사용하려면 태그에 자바 스크립트 버전 번호포함해야 script합니다.

<script type="application/javascript;version=1.7">  
  var x = 5;
  var y = 0;

  let (x = x+10, y = 12) {
    alert(x+y + "\n");
  }

  alert((x + y) + "\n");
</script>

2017 년 4 월 현재 :

  • Chrome, Firefox 및 Edge와 같은 모든 최신 주요 브라우저는 ES2015 (일명 "ES6") let키워드를 지원합니다 .

  • iOS Safari는 letOS 10까지 지원하지 않았습니다 (예 : OS 9는 지원 하지 않음).

  • IE9-IE11과 같은 일부 구형 브라우저는 초기 버전을 지원 let하지만 ES2015에서 정의한 의미를 지원 하지 않습니다 (특히 for루프 헤더의 선언과 관련하여 ). 따라서 구문 오류가 아니며 변수를 선언하지만 예상대로 작동하지 않습니다. 예를 들어, 올바른 구현에서 다음 로그 0, 1 및 2; IE9-IE11에서는 3, 3, 3을 기록합니다.

     for (let i = 0; i < 3; ++i) {
          setTimeout(function() {
              console.log(i);
           }, i * 100);
      }
     

  • IE8과 같은 구식 브라우저는 전혀 지원하지 않습니다.


Internet Explorer 11에는 부분 지원 ( for범위가 올바르지 않음 )이 있으며 모든 현재 브라우저 ( ECMAScript 6 호환성 표 : let ) 에서 전체 지원이 있습니다.


Internet Explorer 및 Operalet모든 브라우저 버전, Firefox 2.0 이후 버전 및 Safari 3.2 이후 지원하지 않습니다 .

Wikipedia 에서이 JavaScript 버전 표참조하십시오 .

방금 JavaScript 1.7을 사용하는지 여부를 정의해야한다는 것을 알게되었습니다 . 따라서 코드는 다음과 같습니다.

<script type="application/javascript;version=1.7"> ... </script>

분명히 인터넷 익스플로러 10 에서 에지 모드 지원 let당, 자바 스크립트 버전 정보 .


이 질문이 처음 질문 된 이후로 많은 시간이 지났습니다. 'let'및 'const'키워드가 ECMAScript 2015 (ES6)에 도입되었습니다. 이 멋진 ES6 호환성 테이블에서 'let'또는 'const'를 검색하십시오 : https://kangax.github.io/compat-table/es6/


업데이트 : Chrome은 이제 지원 let하지만 "use strict"; 지령.

참고 URL : https://stackoverflow.com/questions/2356830/what-browsers-currently-support-javascripts-let-keyword

반응형