javascript - 哪个 javascript 对象打印为 false、为真且类型为 "object"?

标签 javascript birt

我正在尝试调试 BIRT 报告,其中我从 reportContext 中检索了一个参数,如下所示:var myParameter = reportContext.getParameterValue("myParameter"); BIRT 没有调试器和 BIRT javascript 无法访问 JSON.stringify,所以我无法检查这个变量是什么,除非通过打印它。当我打印它时,它打印为“false”。 typeof(myParameter) 是“object”,myParameter === null 计算结果为 false,myParameter === undefined 计算结果为 false,myParameter == "false" 计算结果为 false,myParameter 为真(如果我将它用作 if 语句的守卫,则执行 if 语句)。这个变量到底是什么,我如何确定它是什么?有没有办法在不使用 JSON.stringify 的情况下对其进行字符串化,我无法在 BIRT 中访问它?

最佳答案

> new Boolean(false).toString()
'false'
> typeof new Boolean(false)
'object'
> !!new Boolean(false)
true
> 

要检查这实际上是否是您的对象,new Boolean(false).constructor 返回(字符串化)[Function: Boolean]

关于javascript - 哪个 javascript 对象打印为 false、为真且类型为 "object"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45723215/

相关文章:

Java程序将birt报告导出到excel

javascript - 在 Three.js 中将 Material 包裹在立方体周围

javascript - 如何从 jQuery 中的一堆动态创建的元素中只选择文本框?

javascript - 使用 apollo-client + firebase auth 刷新 token

java - 将 HTML 内容保存在本地存储中

maven - 具有 BIRT View 自动部署的 Tomcat : JSPs only permit GET POST or HEAD

javascript - 如何使用 ReactJS 将对象绑定(bind)到输入标签而不仅仅是值?

mysql - 使用 JDBC 检索 latin1 编码的结果

java - BIRT 表 - 如何停止报告中的数据被截断

tomcat - 在 Tomcat 中使用两个 OSGI 应用程序的问题