想知道這是否可能,如果可能,怎么做?
var variable = true;
if (variable) {
var newVariable = "$('table').find('tr').length > 1)";
} else {
var newVariable = "$('table').find('tr').length > 4)";
}
if (newVariable){ // if $('table').find('tr').length > 1)
console.log(newVariable)
}
當變數為真時,我希望通過使用 newVariable 插入 if 看起來像這樣
if ($('table').find('tr').length > 1)){
console.log(newVariable)
}
如果變數為假,那么這個
if ($('table').find('tr').length > 4)){
console.log(newVariable)
}
uj5u.com熱心網友回復:
newVariable是一個字串。在條件中使用它if不會執行它,它只會測驗字串是否為空。
您可以改用函式,并在if.
var variable = true;
if (variable) {
var newVariable = () => $('table').find('tr').length > 1;
} else {
var newVariable = () => $('table').find('tr').length > 4;
}
if (newVariable()){
console.log(newVariable)
}
uj5u.com熱心網友回復:
不清楚為什么需要使用字串。你可以這樣做的唯一方法是使用 eval 或 new Function 這不是一個好主意。似乎代碼可以清理為
var newVariable;
if (variable) {
newVariable = $('table').find('tr').length > 1;
} else {
newVariable = $('table').find('tr').length > 4;
}
if (newVariable) {
console.log('here');
}
更好的是用三元減少代碼
const minNumElems = variable ? 1 : 4;
const isValid = $('table').find('tr').length > minNumElems;
if (isValid) {
console.log('here');
}
或者更好的是使用三元
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/504989.html
標籤:jQuery
