01/10/2018, 16:36

Không biết sai chỗ nào

Quái, không biết sai chỗ nào


  function loadScript2(url){
      var chk=false;
      var i=0;
      var scripts = document.getElementsByTagName("script");
      for(var i=0;i<scripts.length;i++){
        //console.log(scripts[i].src);
        //console.log("*"+scripts[i].src+"*"+"  *"+url+"*");
        if( new String (url) === new String (scripts[i].src) ){
          chk=true;
          exit;
        }else{
          i++;
        }
      }
      alert(JSON.stringify( {i:i,chk:chk}  ));
  }


anh chị em nào giúp với!!!

Son Tran viết 18:37 ngày 01/10/2018

Trước khi hỏi bạn sai ở chổ nào, mình sẽ hỏi vài thứ liên quan trong source code, có thể bạn chẳng hiểu bạn đang viết gì:
1/ Tại sao lại dùng new String mà không phải là phép check null thông thường?
2/ exit để làm gì? Và nó có ý nghĩa gì?
3/ i++ cuối vòng lặp để làm gì?

Quân viết 18:40 ngày 01/10/2018

Bonus:
4/ Đến 1 câu sai chỗ nào hay có chỗ nào không như mong muốn cũng không nói
Một câu hỏi không thể tệ hơn phản ánh quá nhiều thứ, haizzzz

PS: mình nhớ hình như bạn này newbie hơi lâu rồi, ngôn ngữ/fw nào cũng mó tới rồi thì phải nhưng chưa cái nào ổn định cả, kiến thức nền hơi có vấn đề

Thuc Nguyen Tan viết 18:49 ngày 01/10/2018

À cái này là mình không hiểu sao nó chạy tọn luôn vòng for mặc dù cái src nó trùng với một cái src của danh sách script

à à lộn rồi phải bỏ cái i++ hì.

Son Tran viết 18:48 ngày 01/10/2018

tọn có nghĩa là gì và bạn trả lời được các câu hỏi của mình không?

Thuc Nguyen Tan viết 18:43 ngày 01/10/2018

À nhầm cái i++ rồi.



  function loadScript2(src){
      var chk=false;
      var scripts = document.getElementsByTagName("script");
      for(var i=0;i<scripts.length;i++){
        //if( new String (src) === new String (scripts[i].src) ){
         if(src == scripts[i].src)
          //chk=true;
          //exit;
           return;//Cái script này đã tồn tại không cần load lại.
        }
      }
      if(chk==false){//
           //viết cái load cái script ở đây
      }

  }

Cám ơn nhé.

Thuc Nguyen Tan viết 18:45 ngày 01/10/2018

Sửa tiếp lại luôn


  function loadScript2(src){
      var scripts = document.getElementsByTagName("script");
      for(var i=0;i<scripts.length;i++){
         if(src == scripts[i].src)
           return;//Cái script này đã tồn tại không cần load lại.
        }
      }
      //viết cái load cái script ở đây
      var script = document.createElement("script")
      script.type = "text/javascript";
      script.src = src;
      document.getElementsByTagName("head")[0].appendChild(script);
  }


Bi giờ chắc đẹp trai rồi
cái ơn cái i++

Son Tran viết 18:51 ngày 01/10/2018

if(document.querySelector("script[src='${src}']")) return;

Thuc Nguyen Tan viết 18:46 ngày 01/10/2018

Xài Cái này thì khỏi cần cái vòng for kia à?

Bài liên quan
0