从 Javascript 的选项值中获取布尔值的正确方法

Proper way of getting boolean from option value for Javascript

这是我的 html:

<select id="popularCategorySelectID">
    <option id="1" value="false" selected="selected">No</option>
    <option id="2" value="true">Yes</option>
</select>   

这是我的 javascript:

var popularCategorySelectElement = document.getElementById("popularCategorySelectID");
var popularCategorySelectElementValue = Boolean(popularCategorySelectElement.options[popularCategorySelectElement.selectedIndex].text);   

我想在 popularCategorySelectElementValue 中获得像 truefalse 这样的 Boolean 值。使用上面的代码,我总是得到 true。我试过 [ngValue]="true" 但结果是一样的 true.

感谢您的宝贵时间!

您可以简单地这样做:

document.getElementById("popularCategorySelectID").value
let bool = document.querySelector('#popularCategorySelectID').value === "true" ? true : false

或者甚至简单地说:

// this will return true if the conditional is true 
let bool = document.querySelector('#popularCategorySelectID').value === "true"

你可以像这样得到一个布尔值。