Javascript转换一个真/假值字符串文本

Javascript convert a true/false value string text

本文关键字:字符串 文本 一个 转换 Javascript      更新时间:2023-09-26

我有一个jQuery脚本,收集变量中复选框的值:

var 1_val = $("input[type='checkbox'][name='val_1']").prop( "checked" );
var 2_val = $("input[type='checkbox'][name='val_2']").prop( "checked" );

然后我将这些输出到通过电子邮件发送的消息中:

...<strong>Value 1</strong>: 1_val + '<br /><strong>Value 2</strong>: ' + 2_val + '<br />...

但是在消息体中,我得到了布尔值为true/false的字符串,并且我想要制作一些更友好的消息,如Yes/No。我怎样才能改变呢?

将该值赋给变量:

var 1_val = $("input[type='checkbox'][name='val_1']").prop( "checked" ) ? "Yes" : "No";

您可以使用三元操作符(本质上是一个简短的if语句):

(2_val ? 'Yes' : 'No')

此表达式的值将是字符串Yes如果2_val == true,否则No

输出时可以将1_val替换为(1_val ? 'Yes' : 'No')。(对2_val也这样做)或者,如果您只对这个输出使用这些变量,您可以按照tymeJV的建议执行。

可能远非最佳解决方案,但有一种方法是:

var YesNo = {
   'true' : 'Yes',
   'false' : 'No'
};

然后像这样在你的HTML片段上使用:

var html = '<strong>Value 1 :</strong>' 
    + YesNo[val_1] + '<strong>Value 2</strong>' + YesNo[val_2];