2013-06-04 41 views
0
if(/\/?p(\d+)$/.test(window.location.pathname)) { 
     } else { 
     if(hrefArray.length > 1) { 
    postLast.html('<center><img class="loadingImg" src="'+imgUrl+'"/></center>'); 
    infiniteScroll(); 
     } 
    } 

我知道有一些元素是在編碼陣列,但我的問題是不是做測試,如果網址不包括設置

if() { 

    } else { 
     //run code here 
    } 

我不知道我怎麼會測試URL如果它不包含P19 /\/?p(\d+)$/

var regex=(/\/?p(\d+)$/); 
if(!regex.test(window.location.pathname) {} 

我對這個好奇,我知道如何測試是否元素被定義等等,只是沒有它肯定與正則表達式。

回答

1

regex.test返回一個布爾值。 JavaScript中的.(對象解析運算符)的優先級高於括號中的!(非運算符)。

也就是說,在

! /(?:)/.test("") 

.!,其反轉其值之前發生。

您可以檢查p19(或p後面至少一位)是字符串與

!/p\d+$/.test(window.location.pathname) 

您在正則表達式有其他部分是沒有用的。

+0

好的,謝謝你爆炸。對不起在正則表達式的東西;) – EasyBB

+0

$是什麼意思呢?因爲我已經測試了這些正則表達式來查看其中一個頁面上的布爾值包含p15,並且它們一直呈現爲false(沒有!),然後我拿出$並且它說的是真的應該是 – EasyBB

+0

'$'意味着字符串的結尾 –