如何更简洁地将 Python 的布尔值转换为 JavaScript 的布尔字面量?

6

我想将Python的布尔值转换为JS的布尔字面量。以下是我的工作内容:

store = dict(vat=True)

if store['vat']:
    store.update({'vat': 'true'})
else:
    store.update({'vat': 'false'})

有没有更简洁的方法来替换这段代码片段?

3
相同但较短的写法是 store['vat'] = 'true' if store['vat'] else 'false'。该语句的意思是,如果 store 中存在 vat 键并且其值为真,则将其设置为字符串 'true',否则设置为字符串 'false' - rplnt
2个回答

16
>>> store['vat'] = json.dumps(store['vat'])
>>> store
{'vat': 'true'}

3
在 JavaScript 中,正整数被视为真,而 0(零)则为假。 你可以尝试将 0 作为 JS 的假传递,而将 1 作为 JS 的真(不要使用负值)。
>1 == true
true
>0 == true
false
>0 == false
true
>1 == false
false

1
如果您正在使用Jinja2,可以使用以下代码实现: let jsBoolean = {{ my_python_boolean|int }}; 这假设您将 my_python_boolean 设置为 TrueFalse - tzazo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接