今天遇到一个小问题,需要把数组给转换成公式然后计算出对应的结果来。
比如这样:
let data=[5,[[4,3],2,1]]
需要转换成这样:并计算出结果
let data="(5-((4-3)-2-1))"
方法
就是通过json.stringify转成字符串,然后replaceAll方法替换掉大括号还有逗号形成字符串类型的计算公式,然后返回出来,我们拿的时候利用js原生方法eval把字符串的公式计算出结果来
eval:用于解析字符串成js代码并返回值。
created(){
let data=[5,[[4,3],2,1]]
console.log(eval( this.changepoints(data)) );
},
methods: {
changepoints(val){
let str=JSON.stringify(val);
let str1=str.replaceAll("[", "(");
let str2 = str1.replaceAll("]", ")");
let str3=str2.replaceAll(",","-")
return str3
},
}