如何在javascript中将1转换为true,将0转换为false?

时间:2015-08-29 12:18:22

标签: javascript jquery

在javascript程序中,我需要将1转换为true,将0转换为false; 我的程序片段如下所示

var has_extra_status = 1;
$("#MealOptionFoodHasExtras").attr('checked', has_extra_status);

我有一个状态变量,它保存数值0或1; 基于那个复选框将被检查或不。 我怎样才能实现这一目标? 提前谢谢。

4 个答案:

答案 0 :(得分:2)

你可以使用.prop()inbuild函数而不是.attr()因为jQuery .attr()已被弃用/删除以用于"已检查"并且"禁用"物业。 Reference

var val="";
if(has_extra_status==1)
{
val= true;
} 
else if(has_extra_status==0)
{
val= false;
}

 $("#MealOptionFoodHasExtras").prop('checked', val);

答案 1 :(得分:0)

checked属性,应使用属性 setter .prop(property, value)而不是.attr()进行修改。
它也会将数值(以及其他值)读取为布尔值。

// for true:
var has_extra_status = 1;
// var has_extra_status = 999;
// var has_extra_status = 'yes!';
// var has_extra_status = true;

// for false:
// var has_extra_status = 0;
// var has_extra_status = '';
// var has_extra_status = false;
// var has_extra_status = null;

$("#MealOptionFoodHasExtras").prop('checked', has_extra_status);

答案 2 :(得分:0)

var x = 0;
document.getElementById("demo").innerHTML = Boolean(x);

Try This

答案 3 :(得分:0)

尝试if条件并指定布尔值

var status;
if(has_extra_status==1)
{
status = true;
} 
else if(has_extra_status==0)
{
status = false;
}

然后

$("#MealOptionFoodHasExtras").attr('checked',status);