รูปแบบวันที่ของ JavaScript


สารบัญ

    แสดงสารบัญ


การป้อนวันที่ของ JavaScript

โดยทั่วไปรูปแบบการป้อนวันที่ของ JavaScript มี 3 ประเภท:

ISO Date

"25-03-2558" (มาตรฐานสากล)

Short Date

"25/03/2558"

Long Date

"25 มี.ค. 2558" หรือ "25 มี.ค. 2558"

รูปแบบ ISO เป็นไปตามมาตรฐานที่เข้มงวดใน JavaScript

รูปแบบอื่นไม่ได้ มีการกำหนดไว้อย่างดีและอาจเป็นเฉพาะเบราว์เซอร์


เอาต์พุตวันที่ของ JavaScript

ไม่ขึ้นอยู่กับรูปแบบอินพุต JavaScript จะส่งออกวันที่ทั้งหมด (โดยค่าเริ่มต้น) รูปแบบสตริงข้อความ:

<script>document.write(new Date())

วันที่ ISO ของ JavaScript

ISO 8601 เป็นมาตรฐานสากลสำหรับการแสดงวันที่และ ครั้ง

ไวยากรณ์ ISO 8601 (YYYY-MM-DD) เป็นรูปแบบวันที่ JavaScript ที่ต้องการเช่นกัน:

ตัวอย่าง (วันที่สมบูรณ์)

const d = new Date("2015-03-25");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript ISO Dates</h2>

<p id="demo"></p>

<script>
const d = new Date("2015-03-25");
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

วันที่คำนวณจะสัมพันธ์กับเขตเวลาของคุณ
ผลลัพธ์ข้างต้นขึ้นอยู่กับเขตเวลาของคุณ จะแตกต่างกันไประหว่างวันที่ 24 มีนาคมถึง 25 มีนาคม



วันที่ ISO (ปีและเดือน)

วันที่ ISO สามารถเขียนได้โดยไม่ต้องระบุวัน (YYYY-MM):

ตัวอย่าง

const d = new Date("2015-03");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript ISO Dates</h2>

<p id="demo"></p>

<script>
const d = new Date("2015-03"); 
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

โซนเวลาจะแตกต่างกันไปตามผลลัพธ์ข้างต้นระหว่างวันที่ 28 กุมภาพันธ์ถึง 01 มีนาคม


วันที่ ISO (เฉพาะปี)

วันที่ ISO สามารถเขียนได้โดยไม่มีเดือนและวัน (YYYY):

ตัวอย่าง

const d = new Date("2015");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript ISO Dates</h2>

<p id="demo"></p>

<script>
const d = new Date("2015");
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

โซนเวลาจะเปลี่ยนแปลงตามผลลัพธ์ข้างต้นระหว่างวันที่ 31 ธันวาคม 2014 ถึง 1 มกราคม 2015


วันที่ ISO (วันที่-เวลา)

วันที่ ISO สามารถเขียนได้โดยเพิ่มชั่วโมง นาที และวินาที (ปปปป-ดด-ววTHH:ดด:SSZ):

ตัวอย่าง

const d = new Date("2015-03-25T12:00:00Z");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript ISO Dates</h2>
<p>Separate date and time with a capital T.</p>
<p>Indicate UTC time with a capital Z.</p>

<p id="demo"></p>

<script>
const d = new Date("2015-03-25T12:00:00Z");
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

วันและเวลาคั่นด้วยตัว T ใหญ่

เวลา UTC ถูกกำหนดด้วยอักษรตัวใหญ่ Z

หากคุณต้องการแก้ไขเวลาที่สัมพันธ์กับ UTC ให้ลบ Z ออกแล้วเพิ่ม +HH:MM หรือ -HH:MM แทน:

ตัวอย่าง

const d = new Date("2015-03-25T12:00:00-06:30");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript ISO Dates</h2>
<p>Modify the time relative to UTC by adding +HH:MM or subtraction -HH:MM to the time.</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
new Date("2015-03-25T12:00:00-06:00");
</script>

</body>
</html>

UTC (เวลาสากลเชิงพิกัด) เหมือนกับ GMT (เวลามาตรฐานกรีนิช)

การละเว้น T หรือ Z ในสตริงวันที่-เวลาสามารถให้ผลลัพธ์ที่แตกต่างกันในเบราว์เซอร์ที่แตกต่างกัน


โซนเวลา

เมื่อตั้งวันที่โดยไม่ระบุเขตเวลา JavaScript จะใช้ เขตเวลาของเบราว์เซอร์

เมื่อรับวันที่โดยไม่ระบุเขตเวลาผลลัพธ์ก็คือ แปลงเป็นเขตเวลาของเบราว์เซอร์

กล่าวอีกนัยหนึ่ง: หากสร้างวันที่/เวลาตามเวลา GMT (เวลามาตรฐานกรีนิช) ระบบจะ วันที่/เวลาจะถูกแปลงเป็น CDT (เวลาตามฤดูกาลของสหรัฐอเมริกากลาง) หากผู้ใช้เรียกดู จากตอนกลางของสหรัฐอเมริกา


วันที่สั้นของ JavaScript

วันที่แบบสั้นจะเขียนด้วยไวยากรณ์ "MM/DD/YYYY" เช่นนี้

ตัวอย่าง

const d = new Date("03/25/2015");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript new Date()</h2>

<p id="demo"></p>

<script>
const d = new Date("03/25/2015");
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

คำเตือน!

ในบางเบราว์เซอร์ เดือนหรือวันที่ไม่มีเลขศูนย์นำหน้าอาจทำให้เกิดข้อผิดพลาด:

const d = new Date("2015-3-25");

ไม่ได้กำหนดลักษณะการทำงานของ "ปปปป/ดด/วว"
เบราว์เซอร์บางตัวอาจเป็นเช่นนั้น พยายามเดารูปแบบ บางคนจะกลับมาน่าน

const d = new Date("2015/03/25");

ลักษณะการทำงานของ "DD-MM-YYYY" ยังไม่มีการกำหนดไว้
เบราว์เซอร์บางตัวจะทำเช่นนั้น พยายามเดารูปแบบ บางคนจะกลับมาน่าน

const d = new Date("25-03-2015");

JavaScript วันที่ยาว

วันที่แบบยาวมักเขียนด้วยไวยากรณ์ "MMM DD YYYY" เช่นนี้

ตัวอย่าง

const d = new Date("Mar 25 2015");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript new Date()</h2>

<p id="demo"></p>

<script>
const d = new Date("Mar 25 2015");
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

เดือนและวันสามารถอยู่ในลำดับใดก็ได้:

ตัวอย่าง

const d = new Date("25 Mar 2015");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript new Date()</h2>

<p id="demo"></p>

<script>
const d = new Date("25 Mar 2015");
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

และเดือนสามารถเขียนเต็ม (มกราคม) หรือตัวย่อ (มกราคม):

ตัวอย่าง

const d = new Date("January 25 2015");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript new Date()</h2>

<p id="demo"></p>

<script>
const d = new Date("January 25 2015");
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

ตัวอย่าง

const d = new Date("Jan 25 2015");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript new Date()</h2>

<p id="demo"></p>

<script>
const d = new Date("Jan 25 2015");
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

เครื่องหมายจุลภาคจะถูกละเว้น ชื่อไม่คำนึงถึงขนาดตัวพิมพ์:

ตัวอย่าง

const d = new Date("JANUARY, 25, 2015");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript new Date()</h2>

<p id="demo"></p>

<script>
const d = new Date("JANUARY, 25, 2015");
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

การป้อนวันที่ - การแยกวิเคราะห์วันที่

หากคุณมีสตริงวันที่ที่ถูกต้อง คุณสามารถใช้ Date.parse() วิธีการแปลงเป็นมิลลิวินาที

Date.parse() ส่งกลับจำนวนมิลลิวินาทีระหว่างวันที่และมกราคม 1 ต.ค. 1970:

ตัวอย่าง

let msec = Date.parse("March 21, 2012");

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Date.parse()</h2>
<p>Date.parse() returns the number of milliseconds between the date and January 1, 1970:</p>

<p id="demo"></p>

<script>
const msec = Date.parse("March 21, 2012");
document.getElementById("demo").innerHTML = msec;
</script>

</body>
</html>

จากนั้นคุณสามารถใช้จำนวนมิลลิวินาทีเพื่อแปลงเป็นวันที่วัตถุ:

ตัวอย่าง

let msec = Date.parse("March 21, 2012");
const d = new Date(msec);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Date.parse()</h2>
<p>Date.parse(string) returns milliseconds.</p>
<p>You can use the return value to convert the string to a date object:</p>

<p id="demo"></p>

<script>
let msec = Date.parse("March 21, 2012");
const d = new Date(msec);
document.getElementById("demo").innerHTML = d;
</script>

</body>
</html>

อ้างอิงวันที่ JavaScript ให้สมบูรณ์

หากต้องการข้อมูลอ้างอิงวันที่โดยสมบูรณ์ โปรดไปที่:

อ้างอิงวันที่ JavaScript ให้สมบูรณ์

ข้อมูลอ้างอิงประกอบด้วยคำอธิบายและตัวอย่างของคุณสมบัติ Date ทั้งหมดและ วิธีการ