테스트 사이트 - 개발 중인 베타 버전입니다

스크립트 for문

· 11년 전 · 710
자바스크립트에서 for문 사용시 속도차이 
아래는 체크박스에 전체체크하는 스크립트인데 
All_Chk() 와 All_Chk2()의 차이는 많이 납니다. 
흔히들 for문 안에 length를 사용하시는데 갯수가 작을때는 차이를 모르지만 객수가 만개만되어도 세월아 내월아 입니다. 
 for문 안에서 length 사용시 루프 돌때마다 구하기 때문에 속도가 많이 걸립니다. 
for문 전에 변수 정의해서 사용하셔야 함 

예제) 

<form method='post' name='frm'> 
  <input type='checkbox' name='Chk[]' value=''> 
  <input type='checkbox' name='Chk[]' value=''> 
  <input type='checkbox' name='Chk[]' value=''> 
  <input type='checkbox' name='Chk[]' value=''> 
  ... 
</form> 

<script> 
function All_Chk(){ 
  var f = document.frm; 
  for(var i = 0; i < f['Chk[]'].length; i++) { 
    f['Chk[]'][i].checked = true; 
  } 

function All_Chk2(){ 
  var f = document.frm; 
  var len = f['Chk[]'].length; 
  for(var i = 0; i < len; i++) { 
    f['Chk[]'][i].checked = true; 
  } 
</script>

 

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
26560
24588
31642
31638
31633
31630
31625
19452
6719
6718
6717
6715
27797
30907
30904
6714
6713
27791
19450
6712
6711
6709
6708
27790
19447
6706
6703
6702
6701
6697
6692
27783
6691
6687
6685
6683
6682
19446
27770
19445
27768
6681
6675
6674
19444
6672
6671
27761
6670
30900
24585
6660
6655
6653
31624
6651
31623
31621
19443
6650
31620
31619
31612
31611
27746
31605
6648
20781
31603
31600
6645
6643
6642
6640
20777
31597
6637
19442
31594
31591
31589
31586
31584
20758
19440
31575
31567
20747
6636
31563
31552
27743
24579
6630
6628
6620
6617
27732
24577
6616