实际上在我的函数中我必须比较两个字符串,一个字符串我通过数据库获取并与null
字符串进行比较但它不起作用..
这是我的代码:
order.items.forEach(function(entry) {
result += '<tr>'
+ '<td>'+'<font size=2>'+ a++ + '</font>'+ '</td>'
+ '<td>' +'<font size=2>'+ entry.title + '</font>'+ '</td>'
+ '<td>' +'<font size=2>'+ entry.quantity + '</font>'+'</td>'
if(entry.personalization == 'null') //here is the problem
+ '<td>' +'<font size=2>'+ 'No Personalization' + '</font>'+'</td>'
else
+ '<td>' +'<font size=2>'+ entry.personalization + '</font>'+'</td>'
+ '</tr>';
})
result +='</table>';
$('.modal-body').html(result);
答案 0 :(得分:2)
使用console.log(entry.personalization)
检查值。
Dhara的回答应该有效......
我也用它进行空检查。
(!entry.personalization)
或尝试
(entry.personalization != "")
答案 1 :(得分:1)
在jquery中检查空字符串或空字符串:
if (!entry.personalization) {
// is empty
}
答案 2 :(得分:1)
正如你的问题中提到的,如果我提取的一个字符串和另一个字符串是&#34; null&#34; ,那么字符串比较是一个明确的问题而不是检查null。 ..
Javascript有localeCompare()方法来比较字符串..
你应该使用
entry.personalization.localeCompare("null");
或其反向
var n = "null";
n.localeCompare(entry.personalization);
此函数返回布尔值。
答案 3 :(得分:0)
您无需在null
周围包裹''
。
只需使用: -
if(entry.personalization == null)