如何使用javascript使自定义数据属性值为数字

cod*_*ove 3 javascript jquery escaping custom-data-attribute

嗨,我正在读取存储在div中的html数据标签中的两个数字.当我尝试将数字加在一起时,它们将作为字符串附加.反正有没有在数据属性中包含数字并将其作为数字访问或使用javascript转换回非字符串数字谢谢.

<div data-Lon1="1.3" data-Lat1="-1.2"></div>

<script>
   lon1 = $('#zoom1').attr('data-lon1');
   lat1 = $('#zoom1').attr('data-lat1');
   console.log(lat1+lon1);

   //returns '1.3-1.2' (I want .1 in this example)
</script>
Run Code Online (Sandbox Code Playgroud)

Dav*_*mas 6

只需使用parseFloat():

var lon1 = parseFloat($('#zoom1').attr('data-lon1'));
   lat1 = parseFloat$('#zoom1').attr('data-lat1'));
console.log(lat1+lon1);
Run Code Online (Sandbox Code Playgroud)

JS小提琴演示.

参考文献:

  • @codelove它应该更快,因为jQuery不必解释它是什么类型的数据,尽管我仍然更喜欢`.data`方法. (2认同)