{"ScriptPreparationCode":"var values = [(function*() {})(), undefined, null, {}];","TestCases":[{"Name":"== null","Code":"let isIterable;\r\nfor (const value of values) {\r\n isIterable = value != null \u0026\u0026 typeof value[Symbol.iterator] === \u0022function\u0022;\r\n}","IsDeferred":false},{"Name":"implicit boolean conversion","Code":"let isIterable;\r\nfor (const value of values) {\r\n isIterable = value \u0026\u0026 typeof value[Symbol.iterator] === \u0022function\u0022;\r\n}","IsDeferred":false},{"Name":"explicit boolean conversion","Code":"let isIterable;\r\nfor (const value of values) {\r\n isIterable = !!value \u0026\u0026 typeof value[Symbol.iterator] === \u0022function\u0022;\r\n}","IsDeferred":false},{"Name":"typeof \u002B triple equals null","Code":"let isIterable;\r\nfor (const value of values) {\r\n isIterable = typeof value !== \u0022undefined\u0022 \u0026\u0026 value !== null \u0026\u0026 typeof value[Symbol.iterator] === \u0022function\u0022;\r\n}","IsDeferred":false}]}