2020년 8월 31일 월요일

JavaScript, Array.some(), Array.every()

 Array.every(callbackfn: (value: T, index: number, array: T[]) => unknow, thisArg?: any): boolean

    const array = ['A''B''C''D''E'];

    // result : false
    const result = array.every(item => item === 'C');

Array.every()는 배열의 모든 항목이 조건과 일치해야 true를 반환한다.


Array.some(callbackfn: (value: T, index: number, array: T[]) => unknow, thisArg?: any): boolean

    const array = ['A''B''C''D''E'];

    // result : true
    const result = array.some(item => item === 'C');

Array.some()은 배열의 항목중 하나라도 조건과 일치 하면 true를 반환한다.


JavaScript, Array.slice, Array.Splice 비교

Array.slice(start?: number, end?: number): T[];

    const array = [12345];

    // 인자값을 넘기지 않으면 array배열을 반환한다.
    // result : [1, 2, 3, 4, 5]
    const result1 = array.slice();

    // 인자값을 하나 넣으면 start로 지정되고 지정된 Index부터 마지막까지 반환한다.
    // result : [3, 4, 5] 
    const result2 = array.slice(2);

    // 인자값을 두개(모두) 넣으면 start 와 end가 지정된 배열을 반환한다.
    // result : [2, 3]
    const result3 = array.slice(13);


Array.splice(start:number, deleteCount?: number): T[];

    const array = [12345];

    // 인자값을 넘기지 않으면 빈배열을 반환한다.
    // result : []
    const result1 = array.splice();


    const array = [12345];

    // 인자값을 하나 넣으면 start로 지정되고 지정된 Index부터 마지막까지 반환한다.
    // result : [3, 4, 5]
    const result2 = array.splice(2);


    const array = [12345];

    // 인자값을 두개(모두) 넣으면 start 와 end가 지정된 배열을 반환한다.
    // result : [2, 3, 4]
    const result3 = array.splice(13);


slice와 splice는 비슷한 기능을 수행하지만 위 코드를 보면 차이가 있는걸 확인할수 있다.

1. 인자값을 넘기지 않았을때의 반환되는 값

    slice()는 대상 배열의 모든값을 반환하지만 splice()는 아무것도 반환하지 않는다.

2. 두번째 인자값의 처리방법

    slice(), end?:number, 배열의 처음부터 index만큼 움직인다고 생각하면 된다. 또한 index항목의 값은 포함하지 않는다.

    splice(), deleteCount?: number, 배열의 처음이 아닌 첫 인자(start: number)값을 기준으로 두번째 인자값 만큼의 배열값을 반환한다.


Array.slice(), Array.splice()는 처리 대상의 배열이 처리전과 처리후의 값이 다르다.

Array.slice()는 처리후에도 원래의 값을 유지하고 있는 반면 Array.splice()는 처리후 원래의 값이 변경된다.


Array.slice();

    const array = [12345];

    // result : [4, 5]
    // array : [1, 2, 3, 4, 5]
    const result = array.slice(3);


Array.splice();

    const array = [12345];

    // result : [4, 5]
    // array : [1, 2, 3]
    const result = array.splice(3);


어떤 처리를 하느냐에 따라 두 기능을 활용하면 될것같다.

2020년 8월 30일 일요일

JavaScript, Array

length: number;
    const array = [12345];
    // 배열의 길이
    const arrayLength = array.length;

    // 5
    console.log(arrayLength)

pop(): undefined; 
    const array = [12345];
    // 배열의 마지막 항목 제거
    array.pop();

    // [1, 2, 3, 4]
    console.log(array);

push(...items: T[]): number;
    const array = [];
    // 배열에 새로운 항목 추가
    array.push(1);
    array.push(23);

    // [1, 2, 3]
    console.log(array);

concat(...items: ConcatArray<T>[]): T[];
    const array1 = ['A''B'];
    const array2 = [123];

    // 배열을 합친다.
    const array3 = array1.concat(array2);

    // ['A', 'B', 1, 2, 3]
    console.log(array3);

join(separator?: string): string
    const array = [12345];

    // 배열을 string으로 변경
    const result = array.join();
    const result1 = array.join('/');

    // 1, 2, 3, 4, 5 1/2/3/4/5
    console.log(resultresult1);

reverse(): T[];
    const array = [12345];

    // 배열항목을 뒤집는다.
    const result = array.reverse();

    // [5, 4, 3, 2, 1]
    console.log(result);

indexOf(searchElement: T, fromIndex?: number): number
    const array = ['A''B''C''D''E'];

    // 배열의 항목중 같은 항목을 찾아 그 항목의 Index값을 리턴
    const result = array.indexOf('C');

    // 2
    console.log(result);

    const result1 = array.indexOf('Z');

    // -1
    console.log(result1);


JavaScript, Array.some(), Array.every()

 Array.every(callbackfn: (value: T, index: number, array: T[]) => unknow, thisArg?: any): boolean      const   array  = [ 'A' ,  ...