A Boolean value indicating whether the instance is NaN (“not a number”).
SDK
- Xcode 6.0.1+
Framework
- Swift Standard Library
Declaration
var isNaN: Bool { get }
Discussion
Because NaN is not equal to any value, including NaN, use this property instead of the equal-to operator (==
) or not-equal-to operator (!=
) to test whether a value is or is not NaN. For example:
let x = 0.0
let y = x * .infinity
// y is a NaN
// Comparing with the equal-to operator never returns 'true'
print(x == Double.nan)
// Prints "false"
print(y == Double.nan)
// Prints "false"
// Test with the 'isNaN' property instead
print(x.isNaN)
// Prints "false"
print(y.isNaN)
// Prints "true"
This property is true
for both quiet and signaling NaNs.