Javascript 带有jQuery语法变量的eval()方法不起作用
我正在尝试使用尽可能小的JavaScript代码位运行计算器。我正在使用jQuery进一步最小化我的脚本部分。 但是我的Javascript 带有jQuery语法变量的eval()方法不起作用,javascript,jquery,eval,Javascript,Jquery,Eval,我正在尝试使用尽可能小的JavaScript代码位运行计算器。我正在使用jQuery进一步最小化我的脚本部分。 但是我的eval()方法不起作用,尽管它旁边的警报(已执行)工作正常!我做错了什么?看看到目前为止我都做了些什么 .inp{ 字体大小:粗体; 字体大小:5vw; 宽度:13vw; 高度:13vw; 利润底部:2vw; 利润率最高:2vw; } 输入:悬停{ 颜色:红色; } 答案如下: $(函数(){ $(“input.inp”)。在(“单击”,函数(){ if($(thi
eval()
方法不起作用,尽管它旁边的警报(已执行)
工作正常!我做错了什么?看看到目前为止我都做了些什么
.inp{
字体大小:粗体;
字体大小:5vw;
宽度:13vw;
高度:13vw;
利润底部:2vw;
利润率最高:2vw;
}
输入:悬停{
颜色:红色;
}
答案如下:
$(函数(){
$(“input.inp”)。在(“单击”,函数(){
if($(this.val()!=“ans”){
var solve=$(“#display”).append($(this.val());
}
如果($(this.val()=“ans”){
var结果=评估(求解);
$(“p”).html(eval(result));
警报(“已执行”);
}
});
});
您需要获取#显示的值
,然后将其传递给eval
函数以获得所需答案
演示代码:
.inp{
字体大小:粗体;
字体大小:5vw;
宽度:13vw;
高度:13vw;
利润底部:2vw;
利润率最高:2vw;
}
输入:悬停{
颜色:红色;
}
答案如下:
$(函数(){
$(“input.inp”)。在(“单击”,函数(){
if($(this.val()!=“ans”){
$(“#显示”).append($(this.val());//追加新值
}
如果($(this.val()=“ans”){
var solve=$(“#display”).text();//从显示中获取值
var result=eval(solve);//eval
console.log(结果)
$(“span”).html(结果);
警报(“已执行”);
}
});
});
您需要获取#显示的值
,然后将其传递给eval
函数以获得所需答案
演示代码:
.inp{
字体大小:粗体;
字体大小:5vw;
宽度:13vw;
高度:13vw;
利润底部:2vw;
利润率最高:2vw;
}
输入:悬停{
颜色:红色;
}
答案如下:
$(函数(){
$(“input.inp”)。在(“单击”,函数(){
if($(this.val()!=“ans”){
$(“#显示”).append($(this.val());//追加新值
}
如果($(this.val()=“ans”){
var solve=$(“#display”).text();//从显示中获取值
var result=eval(solve);//eval
console.log(结果)
$(“span”).html(结果);
警报(“已执行”);
}
});
});
parseInt()行parseInt($(“#显示”).append($(this.val());
不会返回您认为它将返回的内容,parseInt()
将尝试解析.append()
的结果,这不是一个数值,我认为您可以这样实现它:
还有一个安全注意事项,请尽量避免使用,请检查此项:
$(函数(){
$(“input.inp”)。在(“单击”,函数(){
让solv=$(this.val();
如果(solv!=“ans”){
$(“#显示”).append(solv);
}
如果(solv==“ans”){
让solve=$(“#display”).text();
常量结果=计算结果(求解);
$(“#ans”).html(结果);
}
});
});
函数计算结果(js){
返回函数(“'use strict”;返回(“+js+”))();
}
.inp{
字体大小:粗体;
字体大小:5vw;
宽度:13vw;
高度:13vw;
利润底部:2vw;
利润率最高:2vw;
}
输入:悬停{
颜色:红色;
}
答案如下:
parseInt()行parseInt($(“#显示”).append($(this.val());
不会返回您认为它将返回的内容,parseInt()
将尝试解析.append()
的结果,这不是一个数值,我认为您可以这样实现它:
还有一个安全注意事项,请尽量避免使用,请检查此项:
$(函数(){
$(“input.inp”)。在(“单击”,函数(){
让solv=$(this.val();
如果(solv!=“ans”){
$(“#显示”).append(solv);
}
如果(solv==“ans”){