html/javascript如何知道属性是布尔值而不是字符串
在以下标记中:html/javascript如何知道属性是布尔值而不是字符串,javascript,jquery,Javascript,Jquery,在以下标记中: <a href="#;" data-is_male="true">Male</a> <a href="#;" data-is_male="false">Female</a> javascript如何知道值true是一个布尔值,而不是字符串?普通JS不会将“false”解析为false,“true”是truthy,因此可以想象它最终会变成1 但是,jQuery将数据属性解析为布尔值,表示真/假字符串 console.log(typ
<a href="#;" data-is_male="true">Male</a>
<a href="#;" data-is_male="false">Female</a>
javascript如何知道值true是一个布尔值
,而不是字符串
?普通JS不会将“false”解析为false,“true”是truthy,因此可以想象它最终会变成1
但是,jQuery将数据属性解析为布尔值,表示真/假字符串
console.log(typeof document.querySelector(“[data-is\u-male]”)。getAttribute(“data-is\u-male”))
console.log(typeof$(“[data-is\u-male]”)。data(“is\u-male”))
普通JS不会将“false”解析为false,“true”是truthy,因此可以想象它会以1结尾
但是,jQuery将数据属性解析为布尔值,表示真/假字符串
console.log(typeof document.querySelector(“[data-is\u-male]”)。getAttribute(“data-is\u-male”))
console.log(typeof$(“[data-is\u-male]”)。data(“is\u-male”))
@VladislavLadicky,但使用“每次尝试都会将字符串转换为JavaScript值(包括布尔值、数字、对象、数组和null)。”啊,这是jQuery。然后,JavaScript什么都不知道。数据集中返回的任何内容都是字符串,但jQuery@VladislavLadicky但是对于“每次尝试都会将字符串转换为JavaScript值(包括布尔值、数字、对象、数组和null)。”啊,这是jQuery。然后,JavaScript什么都不知道。DataSet中返回的任何东西都是字符串,但是JQuelyReld可以自由删除我的编辑,如果你认为它没有增加价值。请阅读我的部分并考虑升级你的答案,因为我认为这将有助于未来读者。有趣的是,这导致了一个下注-从2011A被称为DUPE是一个DUPE是一个DUPE。这项功能从那时起就没有改变2011@mplungjan我已经得到了你的支持:如果你认为它没有增加价值,DFeel可以免费删除我的编辑。请阅读我的部分并考虑升级你的答案,因为我认为它会有助于未来读者。有趣的是这导致了一个失败的投票。这项功能从那时起就没有改变2011@mplungjan我的投票结果是:D
var isMale = $(this).data('is_male');