文字列を式に変換する方法はありますか?
私の文字列:var1 == null && var2 != 5
if()
この文字列を, Likeの条件として使いたいif(var1 == null && var2 != 5)
文字列を式に変換する方法はありますか?
私の文字列:var1 == null && var2 != 5
if()
この文字列を, Likeの条件として使いたいif(var1 == null && var2 != 5)
を使用しeval
ます。これで十分です
if (eval(" var1 == null && var2 != 5"))
{
}
1 つのオプションは、次を作成して呼び出すことnew Function
です。
var strExpr = "var1 == null && var2 != 5";
if (new Function("return " + strExpr)()) {
// ...
}
eval がどのように機能するかを確認するには、コンソールに次のように記述します。
console.log(eval("1==1"));
console.log(eval("1==2"));
これは true と false を出力します
String()関数は、オブジェクトの値を文字列に変換します。eval(String)を実行できます。
<html>
<head>
<script>
function myFunction(){
var var1 = new String("999 888");
var var2 = "5";
var var3;
var var4 = 8;
document.write(String(var2)+ "<br>");
document.write(String(var4)+ "<br>");
//5
//8
if(var3 === undefined && var2 != 6){
alert('var1='+var1+' var2='+var2);
}
var ev=eval(String(var3 === undefined && var2 != 6));
alert(ev);
var ev1=eval("var3 === undefined && var2 != 6");
alert(ev1);
}
</script>
</head>
<body>
<button onclick="myFunction()">Try it</button>
</body>
</html>
それを試して頑張ってください!
1.) Java と Javascript にはあまり共通点はありませんが、名前と一部の構文は C から継承されています。
2.) いずれにせよ、一般的には、しようとしていることを避けるべきです。ほとんどの言語とケースでは、セキュリティ上の問題があるため、この方法は使用しないでください。