2013-08-06 2 views
1

자바 스크립트에서 면도기를 사용할 수 없다는 말을 들었지만 코드의 첫 번째 줄을 수락했지만 나머지 부분에 대해 불만을 제기했기 때문에 이것이 사실인지 확실하지 않습니다. 내 모델의 목록을 가지고 있고 내가 배열을 선언하고 내가 가진 라인의 수에 따라 그것을 채워 않는 원하는 자바 스크립트동적 2 차원 어레이, 구문 오류 JavaScript 및 면도기

function CollectExt() { 
      var numberOfLines = '@Model.NumberOfLines'; 
      for (var i = 0; i < numberOfLines; i++) { 
       var extCollection = {(i+1): '@Model.PhoneDisplay[i].dnorpattern' }; 
      } 

     } 

에 하나 개의 요소의 컬렉션을 얻을 수있어 노력하고 있어요.

편집 난 그냥이 시도하지만 볼 수없는 'i'를 루프

function CollectExt() { 
      var numberOfLines = '@Model.NumberOfLines'; 
      var collection = []; 
      for (var i = 0; i < numberOfLines; i++) { 
       numberOfLines.push('@Model.PhoneDisplay[i].dnorpattern'); 
      } 
     } 
+0

_ "...하지만 ''for '루프 안쪽에'_이 표시되지 않습니다. 그것은'i'가 문자열 안에 있기 때문입니다. – Broxzier

답변

1

자바 스크립트는 C# 코드를 실행할 수 없습니다에 대한 내부. 당신의 루프는 면도기에 있어야합니다. 하지만이 경우에는 루프가 필요하지 않습니다.

function CollectExt() { 
    var stuff = '@string.Join(",", Model.PhoneDisplay.Select(p => p.dnorpattern))'; 
    var collection = stuff.split(","); 
} 
+0

멋진 트릭이 컬렉션은 배열처럼 액세스 할 수 있습니까? – laitha0

+0

예. 'stuff.split'는 문자열을 주어진 구분 기호로 분리하고 배열을 반환하는 JS 함수입니다. – Artless