Javascript Freecodecamp;不要将布尔值用作构造函数";

Javascript Freecodecamp;不要将布尔值用作构造函数";,javascript,html,css,oop,Javascript,Html,Css,Oop,当我在自由代码营开始“Falsy Bouncer”挑战时,我遇到了一个小问题。当我尝试创建一个新的布尔对象时,如下所示: var bool = new Boolean(); 出现一个黄色三角形,表示“不要将布尔值用作构造函数” 我可以很容易地绕过这一点,不使用对象,或者使用不同的方法,就像布尔对象文档中所说的那样,挑战并不是很难,但我只是不知道为什么我不能在Freecodecamp代码窗口中创建一个新对象?它在函数外部或内部执行此操作,并且使用或不使用任何参数 有人知道为什么会这样吗?这是因为

当我在自由代码营开始“Falsy Bouncer”挑战时,我遇到了一个小问题。当我尝试创建一个新的布尔对象时,如下所示:

var bool = new Boolean();
出现一个黄色三角形,表示“不要将布尔值用作构造函数”

我可以很容易地绕过这一点,不使用对象,或者使用不同的方法,就像布尔对象文档中所说的那样,挑战并不是很难,但我只是不知道为什么我不能在Freecodecamp代码窗口中创建一个新对象?它在函数外部或内部执行此操作,并且使用或不使用任何参数

有人知道为什么会这样吗?

这是因为

var boolean=new boolean(真);
log(布尔值===true)其原因是

var boolean=new boolean(真);
log(布尔值===true)~

不要使用对象将非布尔值转换为 布尔值。相反,使用布尔值作为函数来执行此操作 任务:

~

不要使用对象将非布尔值转换为 布尔值。相反,使用布尔值作为函数来执行此操作 任务:


在什么情况下,你更喜欢
new Boolean
而不是简单的
true
?Google知道:@deceze它对于测试某些条件非常有用,可以节省一些代码,阅读上面的文档在什么情况下你更喜欢
new Boolean
而不是简单的
true
无论如何…?谷歌知道:@deceze它对于测试某些条件很有用,可以节省一些代码,阅读上面的文档我不想问如何使用这个对象,因为我知道,我在问为什么我会得到黄色三角形说“不要使用布尔作为构造函数”。我想知道为什么会出现这种情况?@RobertMazurowski,因为出于上述原因,这是不明智的。因此,这意味着运行代码时黄色三角形不会中断?@RobertMazurowski不,这只是警告您可能会出现问题。此对象通常用于测试假值,因此这是它的工作方式,为什么会出现问题建议?我不是问如何使用这个对象,因为我知道,我是问为什么我得到黄色三角形说“不要使用布尔作为构造函数”。我想知道为什么会出现这种情况?@RobertMazurowski,因为出于上述原因,这是不明智的。因此,这意味着运行代码时黄色三角形不会中断?@RobertMazurowski不,这只是警告您可能会出现问题。此对象通常用于测试假值,因此这是它的工作方式,为什么会出现问题建议?请提供您引用的文档的链接。请提供您引用的文档的链接。
var x = Boolean(expression);     // preferred 
var x = new Boolean(expression); // don't use