js运算符转换问题?
字符串的运算符号怎么转换成js的表达式
let obj={
minRange:'≤', //含量范围最小(%)
minValue:'0.2', //含量范围最小(%)
maxRange:'≥',//含量范围最大(%)
maxValue:'0.5',//含量范围最大(%)
value:90,//取值大小
elementValue:'0.3',//检查结果
result:''//计算后的结果
}
//如何转成js表达式
let {minRange,minValue,maxRange,maxValue,value,elementValue} =obj;
if(elementValue >= minValue && elementValue <= maxValue){
obj.result=value
}
回复
1个回答

test
2024-06-29
特殊字符替换,然后求和,就以问题中的代码为例吧,将≤替换为<=,将≥替换为>=。然后使用eval()函数将字符串作为JavaScript代码求值。
图片函数解释描述链接:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Refer...
所以依葫芦画瓢:
let obj = {
minRange: '≤', //含量范围最小(%)
minValue: '0.2', //含量范围最小(%)
maxRange: '≥', //含量范围最大(%)
maxValue: '0.5', //含量范围最大(%)
value: 90, //取值大小
elementValue: '0.3', //检查结果
result: '' //计算后的结果
}
// 替换特殊字符为对应的JavaScript运算符
let {minRange, minValue, maxRange, maxValue, value, elementValue} = obj;
minRange = minRange.replace('≤', '<=');
maxRange = maxRange.replace('≥', '>=');
// 使用eval()求值
if(eval(`${elementValue} ${minRange} ${minValue} && ${elementValue} ${maxRange} ${maxValue}`)){
obj.result = value;
}
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容