2017-12-23 2 views
-2

나는 = 3, 그것은 길이 배열을 만들 것이다 정수를 가정 정수를 기반으로 동적 배열을 만들려고, 그래서있어 3동적 배열

counter(i: number){ 
    return new Array(i); 
} 

않는 이유 이것은 길이가 1 인 배열과 길이가 i 인 배열이 아닌 i 값을 가진 멤버를 반환합니다.

편집이 : 내가 할 노력하고있어에 대한 둘러보기가 :

counter(i: number){ 
    var a = new Array(); 
    for(var x = 0; x < i; x++) 
     a.push(x); 
    return a; 
} 

내가 배열 생성자의 행동에 대해 그냥 궁금 해요.

+0

https://stackoverflow.com/questions/4852017/how-to-initialize-an-arrays-length-in-javascript – developer033

+0

여기서 질문을 다루지는 않습니다. 질문은 Null 값을 가진 멤버의 양보다 i의 값을 가진 배열에 단일 멤버를 만드는 이유입니다. 당신이 준 링크는 말 그대로 반대로, TypeScript가 아니라 JavaScript를 처리합니다. 추 신 : 새로운 Array (4)를 사용하면 4 개의 멤버가있는 배열을 만들지 만 i = 4 일 때 새로운 Array (i)는 값이 4 인 단일 멤버가있는 배열을 만듭니다. –

+0

카운터 방법에 ** ** 나는 확실히 숫자입니까? – JayChase

답변

0

각도 코어 5.0.0을 사용하여 예제를 테스트하면 함수는 길이가 4 인 배열을 만들고, the resulting variable.length을 수행하면 4와 같습니다. 따라서 이전에 주어진 링크는 이전에 필요한 모든 것을 가지고 있습니다. 결과를 이해하십시오. 여기

는 보여 데모입니다 :

https://stackblitz.com/edit/angular-9effym?file=app%2Fapp.component.html

(개발 도구와 디버깅에 대한 직접 링크 : https://angular-9effym.stackblitz.io)

결과

Hello ! 

Array length: 4 

value 0 = undefined 
value 1 = undefined 
value 2 = undefined 
value 3 = undefined 

코드 :

app.component.html :

<hello name="{{ name }}"></hello> 
<div> 
    <br> 
    Array length: {{xx.length}} 
    <br> 
    <br> 
    <div *ngFor="let value of xx; let i = index"> 
     value {{i}} = {{value+''}} 
    </div> 
</form> 
<br> 

app.component.ts

import { Component } from '@angular/core'; 

@Component({ 
    selector: 'my-app', 
    templateUrl: './app.component.html', 
    styleUrls: [ './app.component.css' ] 
}) 
export class AppComponent { 

    xx:any; 


    ngOnInit() { 

     this.xx = this.counter(4); 

    } 

    counter(i: number){ 
    return new Array(i); 
    } 
} 

참고 :

우리의 요소를 초기화하지 않았기 때문에 배열, 거기에 내용이 정의되지 않습니다, 나는 그걸 보여 주 변환 템플릿에 {{value+''}}을 사용하여 문자열에 내용을 입력하십시오.