vue数据类型转换的问题

从后台获取的数据类型是string 如图percent需要数字类型 想把它转换成number vue里一般是怎么转换的呢 我在元素标签里直接使用Number()这个方法 貌似可以 但是不知道这样做对不对图片描述

阅读 37.5k
4 个回答

es6不是有方法转换成数字么

典型的String转Number问题。
这取决于percent属性值是整数还是分数。

/*整数适用*/parseInt(string,radix)
/*分数适用*/parseFloat(string)

你这里的precent属性值很有可能是分数,所以我们用parseFloat()。

parseFloat("0.99")//0.99
typeof parseFloat("0.99")//"number"
Object.prototype.toString.call(parseFloat("0.99"))//[object Number]

如果说你这里怎么写的话,可以写成

:percent:"parseInt(list.repayRate)"

你这里的:percent="decimals(list.repayRate)"
在computed计算一下
computed:{
decimals(val){
return Number(val).toFixed(2)
}
}

使用toFixed()函数就会变成String类型,但是字符串又没有toFixed()方法,所以你是可以使用
return Number(val).toFixed(2)的方法,这样返回值是String; 你要是想返回值为Number,可以
return (Number(val).toFixed(2) - 0);

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏