首頁 >web前端 >js教程 >freemarker判斷物件是否為空的方法_javascript技巧

freemarker判斷物件是否為空的方法_javascript技巧

WBOY
WBOY原創
2016-05-16 15:45:141364瀏覽

FreeMarker與Web容器無關,也就是在Web執行時,它並不知道Servlet或HTTP。它不僅可以用作表現層的實作技術,還可以用於生成XML,JSP或Java 等。

freemarker中顯示某物件使用${name}.

但如果name為null,freemarker就會報錯。如果需要判斷物件是否為空:

<#if name&#63;&#63;>
……
</#if>

當然也可以透過設定預設值${name!''}來避免物件為空的錯誤。如果name為空,就以預設值(「!」後的字元)顯示。 

物件user,name為user的屬性的情況,user,name都有可能為空,那麼可以寫成${(user.name)!''},表示user或name為null,都顯示為空。

判斷為空

<#if (user.name)&#63;&#63;>
……
</#if>

方法二:

對於null,或miss value,freemarker會報錯

!:default value operator,語法結構為:unsafe_expr!default_expr,例如 ${mouse!"No mouse."} 當mouse不存在時,傳回default value;

(product.color)!"red"  這種方式,能夠處理product或color為miss value的情況;

而product.color!"red"只會處理color為miss value的情況

??: Missing value test operator ,測試是否為missing value

unsafe_expr?? :product.color??只會測試color是否為null

(unsafe_expr)??:(product.color)??將測試product和color是否存在null

?exists:舊版的用法

例如:

<#if mouse&#63;&#63;>
 Mouse found
<#else>
 No mouse found
</#if>
Creating mouse...
<#assign mouse = "Jerry">
<#if mouse&#63;&#63;>
 Mouse found
<#else>
 No mouse found
</#if>

以上透過兩種方法介紹了freemarker判斷物件是否為空的方法,希望大家喜歡。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn