2013-08-24 133 views
3

我找到一個點:JavaScript中有什麼意思?

var example = /1/._ ; 

它可以通過Chrome或Firefox的翻譯接受,而且它總是返回undefined

但我不明白爲什麼,是._正則表達式中一個特殊的用途?還是有別的東西,我不知道嗎?

我已經在谷歌搜索,但什麼也沒得到。

回答

11

_is a valid name for a property

IdentifierStart ::

UnicodeLetter

$

_

\ UnicodeEscapeSequence

由於沒有與此名稱的屬性,你只會得到undefined。沒有什麼具體到這裏的正則表達式:很少有與此名稱的屬性,除非你把它定義或導入underscore.js(那時它不是正則表達式,只是在window)。

你必須得有

var example = /1/.abracadabra; 

var example = ({}).π; 
0

讓我們打破它相同的結果:

var example = /1/   .             _; 
      ^regex object^dot (meaning, accessing a method of a property)^attempt to access a property named "_". 

由於_是不存在的屬性,您每次都會得到undefined

就像你會與

var example = document.somethingThatDoesntExist; 
相關問題