如果不运行则嵌套

Nested If Not Running Else

本文关键字:嵌套 运行 如果不      更新时间:2023-09-26

我正在尝试评估一些事情。我从第一个父if语句和嵌套的if/else粘贴代码。由于某种原因,当满足父元素的条件时,它总是使用嵌套的if而不是去else。即使它不满足if条件,它仍然运行这段代码。

var setmeow = new Date();
var meow = nlapiDateToString(setmeow);
if(!Result[i].getValue('custcol_ram_billing_end_date') ){
    var edpb = Result[i].getValue('custcolram_last_rental_billed')
    if(edpb != null || edpb != ' ') {                       
        var daysbetwenced = days_between(nlapiStringToDate(Result[i].getValue('custcol_ram_billing_start_date')), setmeow);
        record.setCurrentLineItemValue('item', 'quantity', daysbetwenced+1);
        //record.setCurrentLineItemValue('item', 'custcol_ram_billing_start_date', Result[i].getValue('custcol_ram_billing_start_date'));
        record.setCurrentLineItemValue('item', 'custcol_ram_billing_end_date', meow);
        record.setCurrentLineItemValue('item', 'custcolram_last_rental_billed', meow);
    } else {
        var daysbetweennoend = days_between(nlapiStringToDate(Result[i].getValue('custcolram_last_rental_billed')), setmeow);
        record.setCurrentLineItemValue('item', 'quantity', daysbetweennoend+1);
        record.setCurrentLineItemValue('item', 'custcol_ram_billing_start_date', Result[i].getValue('custcolram_last_rental_billed'));
        record.setCurrentLineItemValue('item', 'custcol_ram_billing_end_date', meow);
        record.setCurrentLineItemValue('item', 'custcolram_last_rental_billed', meow);
    } 
}

请记住,||是逻辑或运算符,

if(edpb != null || edpb != ' ')

无论edpb是什么,总是不等于null或不等于' '。也就是说,它既不是null也不是' ',或者它将是其中之一而不是另一个。

如果edpb不是null' ',可能您真正想要的是执行if部分,这将是:

if (edpb != null && edpb != ' ')