DataSnapshot class

DataSnapshot에는 데이터베이스 위치의 데이터가 포함됩니다.

데이터베이스에서 데이터를 읽을 때마다 데이터가 DataSnapshot로 수신됩니다. DataSnapshoton() 또는 once()를 사용하여 연결하는 이벤트 콜백에 전달됩니다. val() 메서드를 호출하여 스냅샷의 콘텐츠를 JavaScript 객체로 추출할 수 있습니다. 또는 child()를 호출하여 스냅샷으로 순회하여 하위 스냅샷을 반환하세요 (이후 val()를 호출할 수 있음).

DataSnapshot는 데이터베이스 위치에 있는 데이터의 효율적으로 생성되고 변경할 수 없는 사본입니다. 이 메서드는 수정할 수 없으며 변경되지 않습니다. 데이터를 수정하려면 항상 Reference에서 set() 메서드를 직접 호출합니다.

서명:

export declare class DataSnapshot 

속성

속성 특수키 유형 설명
key 문자열 | 없음 DataSnapshot 위치의 키 (경로의 마지막 부분)입니다.데이터베이스 위치의 마지막 토큰이 키로 간주됩니다. 예: 'ada' /users/ada/ 노드에 대한 키입니다. DataSnapshot의 키에 액세스하면 키를 생성한 위치의 키가 반환됩니다. 하지만 데이터베이스의 루트 URL에 있는 키에 액세스하면 null이 반환됩니다.
우선순위 문자열 | 숫자 | 없음 DataSnapshot에 있는 데이터의 우선순위 값을 가져옵니다.애플리케이션에서 우선순위를 사용할 필요는 없지만 일반 속성에 따라 컬렉션을 정렬할 수 있습니다 (데이터 정렬 및 필터링 참고).
참조 데이터베이스 참조 이 DataSnapshot의 위치입니다.
size 숫자 DataSnapshot의 하위 속성 개수를 반환합니다.

메소드

메서드 특수키 설명
child(경로) 지정된 상대 경로에 있는 위치의 또 다른 DataSnapshot를 가져옵니다.DataSnapshot의 child() 메서드에 상대 경로를 전달하면 지정된 상대 경로에 있는 위치의 다른 DataSnapshot가 반환됩니다. 상대 경로는 간단한 하위 요소 이름 (예: 'ada')이거나 더 깊은 슬래시로 구분된 경로 (예: 'ada/name/first')일 수 있습니다. 하위 위치에 데이터가 없으면 빈 DataSnapshot (즉, 값이 nullDataSnapshot)가 반환됩니다.
exists() DataSnapshot에 데이터가 포함된 경우 true를 반환합니다. snapshot.val() !== null를 사용하는 것보다 약간 더 효율적입니다.
exportVal()로 이용할 수 있습니다. DataSnapshot의 전체 콘텐츠를 자바스크립트 객체로 내보냅니다.exportVal() 메서드는 val()와 비슷하지만 우선순위 정보가 포함된 경우 (사용 가능한 경우) 데이터를 백업하는 데 적합하다는 점이 다릅니다.
foreach(작업) IteratedDataSnapshot의 최상위 하위 요소를 열거합니다.JavaScript 객체의 작동 방식으로 인해 val()에서 반환된 JavaScript 객체의 데이터 순서가 서버의 순서 또는 onChildAdded() 이벤트의 순서와 일치하지 않을 수 있습니다. 이때 forEach()가 유용합니다. DataSnapshot의 하위 요소가 쿼리 순서로 반복되도록 보장합니다.명시적인 orderBy*() 메서드를 사용하지 않으면 결과가 키순으로 반환됩니다 (우선순위를 사용하지 않으면 결과가 우선순위에 따라 반환됩니다).
hasChild(경로) 지정된 하위 경로에 null이 아닌 데이터가 있으면 true를 반환합니다.
hasChildren() DataSnapshotnull가 아닌 하위 속성이 있는지 여부를 반환합니다.hasChildren()를 사용하여 DataSnapshot에 하위 요소가 있는지 확인할 수 있습니다. 지원한다면 forEach()를 사용하여 열거할 수 있습니다. 그렇지 않으면 스냅샷에 원시 값이 포함되거나 (val()로 가져올 수 있음) 비어 있습니다 (val()null를 반환함).
JSON()으로 전송합니다. 이 객체의 JSON 직렬화 가능한 표현을 반환합니다.
val() DataSnapshot에서 JavaScript 값을 추출합니다.DataSnapshot의 데이터에 따라 val() 메서드는 스칼라 유형 (문자열, 숫자, 불리언), 배열 또는 객체를 반환할 수 있습니다. null을 반환할 수도 있습니다. 이는 DataSnapshot가 비어 있음을 나타냅니다 (데이터가 없음).

DataSnapshot.key

DataSnapshot 위치의 키 (경로의 마지막 부분)입니다.

데이터베이스 위치의 마지막 토큰이 키로 간주됩니다. 예: 'ada' /users/ada/ 노드에 대한 키입니다. DataSnapshot의 키에 액세스하면 키를 생성한 위치의 키가 반환됩니다. 하지만 데이터베이스의 루트 URL에서 키에 액세스하면 null이 반환됩니다.

서명:

get key(): string | null;

DataSnapshot.Priority

DataSnapshot에서 데이터의 우선순위 값을 가져옵니다.

애플리케이션은 우선순위를 사용할 필요가 없지만 일반 속성에 따라 컬렉션을 정렬할 수 있습니다 (데이터 정렬 및 필터링 참조).

서명:

get priority(): string | number | null;

DataSnapshot.ref

이 DataSnapshot의 위치입니다.

서명:

readonly ref: DatabaseReference;

DataSnapshot.size

DataSnapshot의 하위 속성 수를 반환합니다.

서명:

get size(): number;

DataSnapshot.child()

지정된 상대 경로에 있는 위치의 또 다른 DataSnapshot를 가져옵니다.

DataSnapshot의 child() 메서드에 상대 경로를 전달하면 지정된 상대 경로에 있는 위치의 또 다른 DataSnapshot이 반환됩니다. 상대 경로는 간단한 하위 요소 이름 (예: 'ada')이거나 더 깊은 슬래시로 구분된 경로 (예: 'ada/name/first')일 수 있습니다. 하위 위치에 데이터가 없으면 빈 DataSnapshot (즉, 값이 nullDataSnapshot)가 반환됩니다.

서명:

child(path: string): DataSnapshot;

매개변수

매개변수 유형 설명
경로 문자열 하위 데이터 위치의 상대 경로입니다.

반환:

DataSnapshot

DataSnapshot.exists()

DataSnapshot에 데이터가 포함된 경우 true를 반환합니다. snapshot.val() !== null를 사용하는 것보다 약간 더 효율적입니다.

서명:

exists(): boolean;

반환:

부울

DataSnapshot.exportVal()

DataSnapshot의 전체 콘텐츠를 자바스크립트 객체로 내보냅니다.

exportVal() 메서드는 val()와 유사하지만 우선순위 정보가 포함된 경우 (사용 가능한 경우) 데이터 백업에 적합합니다.

서명:

exportVal(): any;

반환:

모두

JavaScript 값 (객체, 배열, 문자열, 숫자, 부울 또는 null)으로 된 DataSnapshot의 콘텐츠

DataSnapshot.foreach()

IteratedDataSnapshot의 최상위 하위 요소를 열거합니다.

JavaScript 객체의 작동 방식으로 인해 val()에서 반환된 JavaScript 객체의 데이터 순서가 서버의 순서 또는 onChildAdded() 이벤트의 순서와 일치하지 않을 수도 있습니다. 이때 forEach()가 유용합니다. DataSnapshot의 하위 요소가 쿼리 순서로 반복되도록 보장합니다.

명시적인 orderBy*() 메서드를 사용하지 않는 경우 결과가 키를 기준으로 정렬된 상태로 반환됩니다 (우선순위가 사용되지 않는 경우에는 결과가 우선순위에 따라 반환됨).

서명:

forEach(action: (child: IteratedDataSnapshot) => boolean | void): boolean;

매개변수

매개변수 유형 설명
action (하위 요소: IteratedDataSnapshot) => 부울 | 무효 각 하위 DataSnapshot에 대해 호출되는 함수입니다. 이 콜백은 true를 반환하여 추가 열거를 취소할 수 있습니다.

반환:

부울

true를 반환하는 콜백으로 인해 열거가 취소된 경우 true를 반환합니다.

DataSnapshot.hasChild()

지정된 하위 경로에 null이 아닌 데이터가 있으면 true를 반환합니다.

서명:

hasChild(path: string): boolean;

매개변수

매개변수 유형 설명
경로 문자열 잠재적인 하위 요소의 위치에 대한 상대 경로입니다.

반환:

부울

지정된 하위 경로에 데이터가 있는 경우 true이고, 기타 false.

DataSnapshot.hasChildren()

DataSnapshotnull가 아닌 하위 속성이 있는지 여부를 반환합니다.

hasChildren()를 사용하여 DataSnapshot에 하위 요소가 있는지 확인할 수 있습니다. 있는 경우 forEach()를 사용하여 열거할 수 있습니다. 그렇지 않으면 스냅샷에 원시 값이 포함되거나 (val()로 가져올 수 있음) 비어 있습니다 (val()에서 null를 반환함).

서명:

hasChildren(): boolean;

반환:

부울

이 스냅샷에 하위 항목이 있으면 true를 반환합니다. 그렇지 않으면 false입니다.

DataSnapshot.toJSON()

이 객체의 JSON 직렬화 가능한 표현을 반환합니다.

서명:

toJSON(): object | null;

반환:

객체 | 없음

DataSnapshot.val()

DataSnapshot에서 JavaScript 값을 추출합니다.

DataSnapshot의 데이터에 따라 val() 메서드는 스칼라 유형 (문자열, 숫자 또는 불리언), 배열 또는 객체를 반환할 수 있습니다. null을 반환할 수도 있습니다. 이는 DataSnapshot가 비어 있음을 나타냅니다 (데이터가 없음).

서명:

val(): any;

반환:

모두

JavaScript 값 (객체, 배열, 문자열, 숫자, 부울 또는 null)으로 된 DataSnapshot의 콘텐츠