2012-11-06 87 views
1

我正在嘗試開始學習JavaScript而不是複製它。我知道這可能非常簡單,但Date()從哪裏來?爲什麼我可以打電話給它?從JavaScript調用日期()。該方法從哪裏來?

<!DOCTYPE html> 
<html> 
<head> 
<script> 
    function displayDate() { 
     document.getElementById("demo").innerHTML = Date(); 
    } 
</script> 
</head> 
<body> 

<h1>My First JavaScript</h1> 
<p id="demo">This is a paragraph.</p> 

<button type="button" onclick="displayDate()">Display Date</button> 

</body> 
</html> 
+0

這是您的本地系統(您電腦或設備)日期。 Javascript庫爲您提供訪問權限。它是一種全球性的 – polin

+0

這是全局窗口對象 –

回答

6

Date()是一個內置的對象,在全球範圍內聲明的,就像MathArray

您可以在ECMA specification閱讀第4.2 Language Overview更多關於這一點。報價:

ECMAScript定義了ECMAScript實體的 定義的內置對象的集合。這些內置的對象包括 全局對象,Object對象,函數對象,數組 對象,String對象,Boolean對象,Number對象,該 Math對象,Date對象,RegExp對象中, JSON對象, 錯誤對象錯誤,的EvalError,引發RangeError,的ReferenceError, 的SyntaxError,類型錯誤和的URIError。

+0

的財產難道不應該更適合叫'日期()''一個object'? – Abhilash

+0

謝謝。我在哪裏可以閱讀更多關於它的內容 – radbyx

+0

@radbyx http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf – alexn

2

這是constructor of the Date object,這是在JavaScript中可用的global objects之一。

編輯:請注意,您的代碼示例不使用new,因此它不被用作構造函數 - 它將返回一個字符串而不是一個對象。

+0

謝謝。現在我知道在哪裏閱讀更多內容,而且我也一樣。但是,你知道計算機上的代碼究竟在哪裏嗎?它仍然是我的代碼是全球性的,如在電腦內某處? :)在C#中,我可以引用另一個DLL,並且我確切知道它在哪裏,這也是我在這裏尋找的。 – radbyx

+0

嗯,我確定這個DLL是瀏覽器程序文件中的某個地方。但JavaScript是一種解釋型語言。我不知道你在想什麼,但是用DLL來思考它毫無意義。 –

+0

我已閱讀了全球範圍和解釋語言。你可以找到DLL或帶領我在某個方向? – radbyx

1

日期()是一個內置的對象,在全球範圍內宣佈

請記住日期的該值是客戶端的值,它來自用戶PC而不是服務器日期

+0

好的謝謝。那麼我猜'Date對象'可以在客戶端計算機上找到,而不是在我的代碼中,如果這有什麼意義? – radbyx