zoukankan
html css js c++ java
把字符串当公式计算,并得到他的结果如字符串为200*100
我们在做人员工资的时候,因为每一个员工的业绩不同,那当然领导的工资也不同,我们为了让用户用的方便,我们可以让他输入公式,不如200*100的公式,我们村这条记录肯定是string类型存储,那我们怎么使程序能读懂这个公式呢,一种想法是利用正则表达式,可是我们也要考虑运算符的优先级问题,有没有更方便的方法呢?问了问qq群里的人,得到一种更方便的方法,js中有一个eval函数,它的作用是,如果参数时数字表达式的话,他就自动运算得到结果,那不是正是我们想要的结果吗?可是我们写成的是*.js文件。有时候我们想在.cs文件调用,那怎么办呢?Thinking!Vs中不是有一个JScript吗,他带了jsc.exe的工具,能够把js文件编译成.exe Or .dll,那不是整合我意吗!所以进入到C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727目录下找到jsc.exe,输入jsc.exe /out:E:/Eval.dll e:/Eval.js 命令行,即可生成Eval.dll.那么有了这个dll那么接下来的就好说了,回到我们的Vs中右击点击引用,把这个dll引用到我们的解决方案中,然后再.cs代码文件中写入
Response.Write(CustomEval.eval(
200
*
10
+
100
/
10
-
10
));
即可,Eval.js文件的内容是:
1
class CustomEval
2
{
3
static
function
eval(strExp)
4
{
5
return
eval(strExp);
6
}
7
8
}
查看全文
相关阅读:
vue的特点 关键字
小程序技术实现
SpringCloud简历模板
SpringBoot简历模板
SpringCloud+Eureka快速搭建微服架构
Docker 面试题
说说mysql的存储引擎,有什么区别?索引的介绍
mysql语句
fail-fast 与 fail-save 机制的区别
动态规划总结
原文地址:https://www.cnblogs.com/xbf321/p/875902.html
最新文章
计算每期本金和利息
Python中的传参是传值还是传址?
统计一个字符串内每个单词出现的次数
对一个字符串进行去重,并从小到大排序
*args和**kwargs的区别
join和split的区别
如何随机打乱列表中的元素
如何在一个函数内部修改全局变量
Java核心技术点之多线程2
线程池
热门文章
日期格式化问题
dubbo
mac与windows读取文件路径不同
web.xml
mysql生成百万数据
mac系统下进入mysql终端
外键-FOREIGN KE
mysql常用的一些sql
Elasticsearch全文检索引擎。什么是elasticsearch? 有什么特点? 怎么使用?
java导出execl报表
Copyright © 2011-2022 走看看