期望
借助Boolean方法, 传入'false'时, 输出false; 传入'true'时, 输出true。
我们先看下实际效果

没达到我们预期
解决方案1
使用三等来判断
let flag1 = 'true'
// 输出true
console.log( flag1 === 'true')
let flag2 = 'false'
// 输出false
console.log( flag2 === 'true')
解决方案2
借用test来判断
// 输出 true
/true/.test('true')
// 输出false
console.log(/true/.test('false'))
Boolean转换结果
下面的所有的代码行均会创建初始值为 false 的 Boolean 对象。
const myBoolean=new Boolean();
const myBoolean=new Boolean(0);
const myBoolean=new Boolean(null);
const myBoolean=new Boolean("");\
// 不带单引号的是false
const myBoolean=new Boolean(false);
const myBoolean=new Boolean(NaN);
下面的所有的代码行均会创初始值为 true 的 Boolean 对象
var myBoolean=new Boolean(1);
var myBoolean=new Boolean(true);
var myBoolean=new Boolean("true");
// 带单引号的字符串false最终等于true
var myBoolean=new Boolean("false");
var myBoolean=new Boolean("Bill Gates");
var myBoolean=new Boolean({});
var myBoolean=new Boolean([]);