1. 程式人生 > >el表示式獲取物件屬性值 返回值型別

el表示式獲取物件屬性值 返回值型別

實現 數字頁碼時 遇到的一個問題。

後端servlet 在request.setAttribute("page",page); page 為pagebean的例項物件,pagebean類中有int 格式屬性 pageNum;

前端 js 中 el表示式獲取到的pageNum 預設為 String 型別。導致後面運算出錯。

如下程式碼中,第9行若寫為:

var n = pageCount;
那麼第15行 for 迴圈中 page1+n 將得到 字串拼接結果。
js 中 型別不嚴格區分害死人呀......
el表示式返回值型別沒有找到總結的部落格~ el表示式還有很多要學~
 1 //<!-- 頁碼第二種實現  主要過程 -->
2 window.onload = function(){ 3 var pageNumDiv = document.getElementById("pageNum"); 4 var category='${requestScope.category}'; 5 var page ='${requestScope.page.page}'; 6 var pageCount='${requestScope.page.pageNum}'; 7 var page1 =1; 8 9 var n = Number(pageCount);
10 if(pageCount>6){ 11 page1 =page<4?1:(page>pageCount-4?pageCount-6:page-3); 12 n=7; 13 } 14 15 for(i=page1;i<page1+n;i++){ 16 var a = document.createElement("a"); 17 if(i==page){ 18 a.innerHTML="<span >"+i+"</span>&nbsp;" 19
}else{ 20 a.innerHTML="<a href='Goods.do?method=selectAll&category="+category+"&page="+i+"'>"+i+"</a>&nbsp;"; 21 } 22 pageNumDiv.appendChild(a); 23 } 24 25 }

另參考:js string 轉 int 注意的問題小結