>웹 프론트엔드 >JS 튜토리얼 >인코딩 스크립트와 일반 스크립트를 함께 사용할 때의 문제점과 해결 방법_javascript 기술

인코딩 스크립트와 일반 스크립트를 함께 사용할 때의 문제점과 해결 방법_javascript 기술

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-05-16 19:17:411478검색

반년 전 처음 스크립트 인코딩을 했을 때, 사용해 본 경험이 없어서, 인코딩 스크립트와 일반 스크립트를 섞어서 사용하는데 문제가 없는지 51js에 물어봤습니다. 그 결과, 건설적인 의견은 접수되지 않았는데, 이는 적어도 두 가지 문제를 보여주는데, 하나는 아무도 관심을 두지 않는다는 것이고, 다른 하나는 문제가 없다는 것입니다. 물론 저는 후자의 결과를 더 받아들이고 싶었기 때문에 인코딩 스크립트와 일반 스크립트를 혼합하여 사용하기 시작했습니다.

이런 이해를 바탕으로 대본을 많이 만들었고, 정말 문제가 없는 것 같아서 원래 판단을 더욱 믿었다. 결과는 다시 한번 IE에 의해 속였습니다. 인코딩된 스크립트와 일반 스크립트를 혼합하여 사용하는 것은 문제가 없는 것이 아니며 모두 문제가 있는 것은 아니지만 특정 조건에서는 문제가 발생합니다. 다음 예를 보세요.

코드 복사 코드는 다음과 같습니다.

 
 
    JScript 인코딩 연구 
     
 
 
    <script>  <BR>        #@~^8gAAAA==~,P~,P,Pr(L ^Ycw.WDWOza Rtn/klo ~xP6E    mOkGUv#@#@&,~P,P~~,    @#@&~ ,P~P,~,P~,P,lV DDcB}4% 1Y 2MWYKOXa Rtnd/mo Bbi@#@&,P~P,~P,8I@#@&PP~~,P~P@# @&,P~,P,PP}4NnmDR k/CL P',WE    mYbGU`*@#@&P~P~~,P~    @#@&P,P~~,PP~~,P~l^ nMYcEr(L 1Yc k/Co BbI@#@&P,~P,PP,NIGjkAAA==^#~@  <BR>    </script> 
     
    <script>  <BR>        기능 Normal() {}   <BR>        Normal. 프로토타입.Message = function()  <BR>        {  <BR>          WriteLine('Normal.prototype.Message');  <BR>       };   <BR>        Normal.Message = function()        { <BR>            WriteLine(' 일반.메시지');  <BR>        };   <BR>    </script> 
    <script>  <BR>        var msg = '.prototype.Message" 실패.<br>';  <BR>        function WriteLine(msg) { document.write(msg   '<br><br>'); }  <BR> <br>        var o = new Object();  <br>        시도 { o.Message();  }  <BR>        catch(e) { WriteLine('Call "Object'   msg   e.message); }  <BR>        시도해 보세요 { Object.Message(); }  <BR>        catch(e) { WriteLine('Call "Object.Message" Fail. <br>'   e.message); }  <BR><br>        var e = new Encode();  <br>        시도해 보세요 { e.Message(); }  <BR>        catch(e) { WriteLine('Call "Encode'   msg   e.message); }  <BR>        Encode.Message();  <BR><br>        var n = new Normal();  <br>        시도해 보세요 { n.Message();  }  <BR>        catch(e) { WriteLine('Call "Normal'   msg   e.message); }  <BR>        Normal.Message();  <BR>    </script> 
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.