草庐IT

eval-stdin

全部标签

c# - 将 Eval ("bitValue") 转换为 Bool

我在ItemTemplate中有一个带有超链接控件的ListView。如果返回值为0(假),我想显示链接,如果返回值为1(真),则不显示链接。到目前为止我有这个:'Text="ReviewEnquiry"Visible=''/>...但这会导致“指定的转换无效”异常。我在其他地方看到的示例表明这应该有效。我可以确认Locked列只返回0或1(来自SQLServer)——当然这些应该很容易从bit/int转换为bool?? 最佳答案 如果Locked是一个int你应该这样做:但是这也应该有效,所以当Locked>0时它返回true无论

c# - Asp.Net(C#) 内联编码 Eval if 语句

大家好;如果控件如何进行内联求值? 最佳答案 使用三级表达式“?”: 关于c#-Asp.Net(C#)内联编码Evalif语句,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2606833/

c# - 项目模板中的 <%# DataBinder.Eval(Container.DataItem ,"ColumnName") %> 究竟做了什么?

我是第一次使用DataList。一切正常,我可以在屏幕上看到数据。我在项目模板中使用此代码。这是我绑定(bind)的DataTableDataTabledt=newDataTable();dt.Columns.Add("AA");dt.Columns.Add("BB");dt.Columns.Add("CC");dt.Rows.Add("1","2","3");dt.Rows.Add("10","20","30");dt.Rows.Add("100","200","300");dt.Rows.Add("1000","2000","3000");DataList1.DataSource=

javascript - 将字符串更改为 javascript 中的函数(不是 eval)

varfoo="function(){alert('meee');}";foo();我已经尝试了上面的方法,但它不起作用有没有其他方法可以在不使用eval的情况下执行该函数?谢谢 最佳答案 您想使用Function正如安德斯所说,直接构造函数。所有参数都是字符串。最后一个参数是函数的主体,任何前导参数都是函数采用的参数的名称。借用安德斯的例子,varmultiply=newFunction("x","y","returnx*y");会像写作varmultiply=function(x,y){returnx*y}在你的例子中,你有"f

javascript - 利用 JavaScript 的 eval() 方法

许多开发人员认为应该避免使用JavaScript的eval()方法。从设计的Angular来看,这个想法是有道理的。当有更简单、更好的选项可用时,它通常用作丑陋的解决方法。但是,我不理解对安全漏洞的担忧。当然,运行eval()使黑客能够运行您可以运行的任何JavaScript代码。但是他们不能这样做吗?至少在Chrome中,开发者工具允许最终用户运行他们自己的JavaScript。eval()为什么比开发者工具更危险? 最佳答案 正如B-Con所提到的,攻击者不是坐在计算机前的那个人,因此可以使用脚本中已有的eval()作为将恶意代

javascript - 如何覆盖javascript中的eval函数?

例如:(function(){varproxied=window.eval;window.eval=function(){returnproxied.apply(this,arguments);};})();但是这段代码不起作用。 最佳答案 eval很神奇。与“真正的”函数不同,它可以在调用者中读取和写入局部变量:functionfoo(){vara=1;eval('a+=1');alert(a);//2}将eval替换为代理函数,您遇到了一个问题:a+=1在proxied的范围内执行函数而不是foo。根据评估代码中发生的情况,可能

javascript - 为什么 eval() 中的 typeof 在我的函数中抛出错误?

我试图实现类似于angular.isDefined(...)的功能但允许检查变量及其属性,所以我写了这个概念证明:functioncheck(s){letparts=s.split('\.');letpartial='';returnparts.every(p=>{partial+=(partial?'.':'')+p;letexpr=`typeof${partial}`;console.log('Evaluating',expr);returneval(expr)!=='undefined';});}check('obj');letobj={};check('obj');obj.a=

javascript eval 和对象评估

我有一部分调试框架需要能够运行时评估对象。具体来说,如果我有一个像这样的字符串"{a:1,b:2}"它需要将它评估为一个包含成员a和b与这些值。但是,如果我执行eval("{a:1,b:2}"),它似乎将其评估为一个语句,并说明了非法标签。我已经破解了它,所以它的评估是这样的:eval("varx="+str+";x;");这似乎有效,但似乎是一个可怕的hack。关于如何更好地做到这一点有什么建议吗?(顺便说一句,我知道eval的危险,但这是调试框架的一部分,实际用户不会看到。) 最佳答案 您可以使用()将其解析为对象,而不是语句,

javascript - 这个 eval 条件的目的是什么?

我在这里浏览源代码:http://js-dos.com/games/doom2.exe.html并注意到一些事情:if(typeofModule==='undefined'){Module=eval('(function(){try{returnModule||{}}catch(e){return{}}})()');}Module函数是用内联脚本标记定义的稍后在另一个内联标签中用var再次声明,这次它检查模块是否存在。我的问题:如果它只会尝试再次返回模块,那么用自调用函数声明模块有什么意义?不是已经被证明不存在了吗?为什么不直接将Module显式声明为{}?

javascript - 在输入中使用 javascript eval() 进行简单计算是否安全?

我想允许用户在文本输入中执行简单的计算,这样键入2*5的结果将是10。我将除数字以外的所有内容替换为空字符串,然后使用eval()进行计算。与手动解析相比,这似乎更容易并且可能更快。人们常说eval()是不安全的,所以我想知道在这种情况下使用它是否有任何危险或缺点。function(input){value=input.value.replace(/[^-\d/*+.]/g,'');input.value=eval(value);} 最佳答案 那是安全的,不是因为您正在净化它,而是因为它全部由用户输入并在他们自己的浏览器中运行。如果