isinf()
isinf() 함수는 인수로 전달된 값이 양의 무한대 또는 음의 무한대인지 검사하여 불리언 값을 반환합니다.
문법
isinf(EXPR)
매개변수
EXPR- 무한대 여부를 검사할 필드 이름 또는 표현식.
설명
isinf() 함수는 EXPR을 평가한 결과가 실수 타입(double, float)의 양의 무한대 또는 음의 무한대이면 true를 반환하고, 그렇지 않으면 false를 반환합니다.
정수, 문자열, null 등 무한대가 될 수 없는 값과 무한대가 아닌 유한한 실수·NaN 값에는 false를 반환합니다. isnull(), isnum() 함수와 마찬가지로 결과가 항상 true나 false로 결정되며 null을 반환하지 않습니다.
log처럼 0을 입력하면 무한대를 반환하는 수학 함수가 있습니다. 예를 들어 log(0)은 음의 무한대를 반환합니다. 이런 값은 이후 집계나 다운로드 단계에서 예기치 않은 결과를 만들 수 있으므로, isinf() 함수로 걸러낼 수 있습니다. sqrt, acos처럼 정의역이 있는 다른 수학 함수는 정의역을 벗어난 값이 입력되면 무한대가 아닌 NaN을 반환합니다(isnan() 참고). 나눗셈은 분모가 0이면 결과를 null로 처리하므로 무한대를 만들지 않습니다.
오류 코드
| 오류 코드 | 설명 |
|---|---|
| 99000 | 인자를 지정하지 않고 호출한 경우 |
사용 예
-
정의역을 벗어난 로그 계산 결과 검사
json "{'val': 0}" | eval result = isinf(log(val)) | # result: true -
정상적인 실수 값에 대한 검사
json "{'val': 3.14}" | eval result = isinf(val) | # result: false -
NULL 입력
json "{'val': null}" | eval result = isinf(val) | # result: false -
문자열 입력 — 무한대가 될 수 없는 타입은 false
json "{'val': 'foo'}" | eval result = isinf(val) | # result: false
변경 이력
isinf() 함수는 소나 4.0.2609.0 버전부터 사용 가능합니다.