caches
อ็อบเจ็กต์ที่ใช้จัดการ cache ของแอปพลิเคชัน
caches.open('my-cache').then(cache => {
// จัดการ cache
});
closed
คุณสมบัติที่บ่งบอกว่า window ถูกปิดหรือไม่
if (window.closed) {
console.log('หน้าต่างถูกปิดแล้ว');
}
// Output: 'หน้าต่างถูกปิดแล้ว' ถ้าหน้าต่างถูกปิด
console
อ็อบเจ็กต์ที่ใช้สำหรับการ debug และแสดงข้อความใน console
console.log('Hello, World!');
// Output: 'Hello, World!'
crossOriginIsolated
บ่งบอกว่าสคริปต์กำลังทำงานใน cross-origin isolated environment หรือไม่
if (crossOriginIsolated) {
// ทำงานใน cross-origin isolated environment
}
// Output: ไม่แสดงอะไรถ้าสคริปต์ไม่ได้ทำงานใน cross-origin isolated environment
crypto
อ็อบเจ็กต์ที่ให้บริการฟังก์ชันการเข้ารหัสพื้นฐาน
const array = new Uint32Array(10);
crypto.getRandomValues(array);
console.log(array);
// Output: [ค่าตัวเลขสุ่มใน array]
customElements
ให้วิธีการทำงานกับ custom elements ใน Web Components
customElements.define('my-element', class extends HTMLElement {
connectedCallback() {
this.innerHTML = 'สวัสดีจาก custom element!';
}
});
devicePixelRatio
ส่งคืนอัตราส่วนของพิกเซลทางกายภาพต่อพิกเซล CSS สำหรับหน้าจอปัจจุบัน
console.log(`อัตราส่วนพิกเซลของอุปกรณ์: ${window.devicePixelRatio}`);
// Output: อัตราส่วนพิกเซลของอุปกรณ์: [ค่าของ devicePixelRatio]
document
แทนหน้าเว็บที่โหลดในหน้าต่างเบราว์เซอร์
document.title = 'ชื่อหน้าใหม่';
console.log(document.title);
// Output: 'ชื่อหน้าใหม่'
frameElement
ส่งคืนอิลิเมนต์ที่หน้าต่างถูกฝังอยู่ หรือ null ถ้าเป็นหน้าต่างเต็ม
if (window.frameElement) {
console.log('หน้าต่างนี้อยู่ใน frame หรือ iframe');
} else {
console.log('หน้าต่างนี้ไม่อยู่ใน frame หรือ iframe');
}
// Output: ข้อความตามสถานะของ window.frameElement
frames
ส่งคืนอ็อบเจ็กต์คล้ายอาร์เรย์ของ subframes ในหน้าต่างปัจจุบัน
console.log(`จำนวน frames: ${window.frames.length}`);
// Output: จำนวน frames: [จำนวนของ frames]
history
ให้วิธีการจัดการกับประวัติการท่องเว็บ
history.pushState({page: 1}, "หัวข้อ 1", "?page=1");
console.log(history.state);
// Output: {page: 1}
indexedDB
ให้การเข้าถึง IndexedDB API สำหรับการจัดเก็บข้อมูลฝั่งไคลเอนต์
let request = indexedDB.open("ฐานข้อมูลของฉัน", 1);
request.onsuccess = () => console.log('ฐานข้อมูลเปิดสำเร็จ');
// Output: 'ฐานข้อมูลเปิดสำเร็จ'
innerHeight
ส่งคืนความสูงของ viewport ของหน้าต่างเบราว์เซอร์
console.log(`ความสูงของ viewport: ${window.innerHeight}px`);
// Output: ความสูงของ viewport: [ค่าของ innerHeight]px
innerWidth
ส่งคืนความกว้างของ viewport ของหน้าต่างเบราว์เซอร์
console.log(`ความกว้างของ viewport: ${window.innerWidth}px`);
// Output: ความกว้างของ viewport: [ค่าของ innerWidth]px
isSecureContext
เป็นค่าบูลีนที่บ่งชี้ว่าบริบทปัจจุบันปลอดภัย (HTTPS) หรือไม่
if (window.isSecureContext) {
console.log('นี่เป็นบริบทที่ปลอดภัย');
} else {
console.log('นี่ไม่ใช่บริบทที่ปลอดภัย');
}
// Output: ข้อความตามสถานะของ window.isSecureContext
length
ส่งคืนจำนวนของ frames ในหน้าต่าง
console.log(`จำนวนของ frames: ${window.length}`);
// Output: จำนวนของ frames: [จำนวนของ frames]
localStorage
ให้การเข้าถึงอ็อบเจ็กต์การจัดเก็บสำหรับต้นกำเนิดของเอกสาร
localStorage.setItem('คีย์', 'ค่า');
console.log(localStorage.getItem('คีย์'));
// Output: 'ค่า'
location
มีข้อมูลเกี่ยวกับ URL ปัจจุบัน
console.log(`URL ปัจจุบัน: ${location.href}`);
// Output: URL ปัจจุบัน: [URL ของหน้าเว็บปัจจุบัน]
locationbar
แทนแถบตำแหน่งของเบราว์เซอร์
locationbar.visible = true;
console.log(locationbar.visible);
// Output: true หรือ false ขึ้นอยู่กับสถานะของ locationbar.visible
menubar
แทนแถบเมนูของเบราว์เซอร์
menubar.visible = false;
console.log(menubar.visible);
// Output: true หรือ false ขึ้นอยู่กับสถานะของ menubar.visible
name
รับ/ตั้งชื่อของหน้าต่าง
window.name = 'หน้าต่างของฉัน';
console.log(window.name);
// Output: 'หน้าต่างของฉัน'
opener
ส่งคืนการอ้างอิงถึงหน้าต่างที่เปิดหน้าต่างนี้
if (window.opener) {
window.opener.postMessage('สวัสดีจากหน้าต่างใหม่!', '*');
console.log('ข้อความถูกส่งไปยังหน้าต่างที่เปิดหน้าต่างนี้');
}
// Output: 'ข้อความถูกส่งไปยังหน้าต่างที่เปิดหน้าต่างนี้' ถ้ามีหน้าต่างที่เปิดหน้าต่างนี้
origin
ส่งคืนต้นกำเนิดของเอกสารปัจจุบัน
console.log(`ต้นกำเนิด: ${window.origin}`);
// Output: ต้นกำเนิด: [ต้นกำเนิดของเอกสารปัจจุบัน]
outerHeight
ส่งคืนความสูงของหน้าต่างเบราว์เซอร์ทั้งหมด
console.log(`ความสูงหน้าต่างทั้งหมด: ${window.outerHeight}px`);
// Output: ความสูงหน้าต่างทั้งหมด: [ค่าของ outerHeight]px
outerWidth
ส่งคืนความกว้างของหน้าต่างเบราว์เซอร์ทั้งหมด
console.log(`ความกว้างหน้าต่างทั้งหมด: ${window.outerWidth}px`);
// Output: ความกว้างหน้าต่างทั้งหมด: [ค่าของ outerWidth]px
parent
ส่งคืนการอ้างอิงถึงหน้าต่างแม่ของหน้าต่างปัจจุบัน
if (window.parent !== window) {
console.log('หน้าต่างนี้เป็นหน้าต่างลูก');
} else {
console.log('หน้าต่างนี้ไม่เป็นหน้าต่างลูก');
}
// Output: ข้อความตามสถานะของ window.parent
performance
ให้การเข้าถึงข้อมูลที่เกี่ยวข้องกับประสิทธิภาพ
let loadTime = performance.now();
console.log(`เวลาที่โหลด: ${loadTime}ms`);
// Output: เวลาที่โหลด: [ค่าของ loadTime]ms
personalbar
แทนแถบส่วนตัวของเบราว์เซอร์
personalbar.visible = true;
console.log(personalbar.visible);
// Output: true หรือ false ขึ้นอยู่กับสถานะของ personalbar.visible
scheduler
ให้วิธีการจัดการกับการจัดตารางงาน
scheduler.postTask(() => {
console.log('งานถูกดำเนินการแล้ว');
});
// Output: 'งานถูกดำเนินการแล้ว'
screen
ส่งคืนการอ้างอิงถึงอ็อบเจ็กต์หน้าจอ
console.log(`ความกว้างหน้าจอ: ${screen.width}px`);
// Output: ความกว้างหน้าจอ: [ค่าของ screen.width]px
screenLeft
ส่งคืนระยะทางแนวนอนของขอบซ้ายของเบราว์เซอร์ผู้ใช้จากด้านซ้ายของหน้าจอ
console.log(`ตำแหน่งซ้ายของหน้าต่าง: ${window.screenLeft}px`);
// Output: ตำแหน่งซ้ายของหน้าต่าง: [ค่าของ screenLeft]px
screenTop
ส่งคืนระยะทางแนวตั้งของขอบบนของเบราว์เซอร์ผู้ใช้จากด้านบนของหน้าจอ
console.log(`ตำแหน่งบนของหน้าต
่าง: ${window.screenTop}px`);
// Output: ตำแหน่งบนของหน้าต่าง: [ค่าของ screenTop]px
screenX
เป็นชื่อแฝงของ screenLeft
console.log(`ตำแหน่งซ้ายของหน้าต่าง: ${window.screenX}px`);
// Output: ตำแหน่งซ้ายของหน้าต่าง: [ค่าของ screenX]px
screenY
เป็นชื่อแฝงของ screenTop
console.log(`ตำแหน่งบนของหน้าต่าง: ${window.screenY}px`);
// Output: ตำแหน่งบนของหน้าต่าง: [ค่าของ screenY]px
scrollbars
แทนแถบเลื่อนของเบราว์เซอร์
scrollbars.visible = true;
console.log(scrollbars.visible);
// Output: true หรือ false ขึ้นอยู่กับสถานะของ scrollbars.visible
scrollX
ส่งคืนจำนวนพิกเซลที่เอกสารถูกเลื่อนในแนวนอน
console.log(`ตำแหน่งการเลื่อนแนวนอน: ${window.scrollX}px`);
// Output: ตำแหน่งการเลื่อนแนวนอน: [ค่าของ scrollX]px
scrollY
ส่งคืนจำนวนพิกเซลที่เอกสารถูกเลื่อนในแนวตั้ง
console.log(`ตำแหน่งการเลื่อนแนวตั้ง: ${window.scrollY}px`);
// Output: ตำแหน่งการเลื่อนแนวตั้ง: [ค่าของ scrollY]px
self
ส่งคืนการอ้างอิงถึงหน้าต่างปัจจุบัน
self.addEventListener('message', (event) => {
console.log('ได้รับข้อความ:', event.data);
});
// Output: 'ได้รับข้อความ: [ข้อความที่ได้รับ]'
sessionStorage
ให้การเข้าถึงอ็อบเจ็กต์การจัดเก็บเซสชันสำหรับต้นกำเนิดของเอกสาร
sessionStorage.setItem('คีย์ชั่วคราว', 'ค่าชั่วคราว');
console.log(sessionStorage.getItem('คีย์ชั่วคราว'));
// Output: 'ค่าชั่วคราว'
statusbar
แทนแถบสถานะของเบราว์เซอร์
statusbar.visible = true;
console.log(statusbar.visible);
// Output: true หรือ false ขึ้นอยู่กับสถานะของ statusbar.visible
toolbar
แทนแถบเครื่องมือของเบราว์เซอร์
toolbar.visible = true;
console.log(toolbar.visible);
// Output: true หรือ false ขึ้นอยู่กับสถานะของ toolbar.visible
นี่คือลิสต์ของ static properties พร้อมกับ comments ที่แสดง output ของแต่ละ code ตัวอย่าง:
top
ส่งคืนการอ้างอิงถึงหน้าต่างบนสุดในลำดับชั้นของหน้าต่าง
if (window.top === window) {
console.log('นี่คือหน้าต่างระดับบนสุด');
}
// Output: 'นี่คือหน้าต่างระดับบนสุด' ถ้า window.top เป็นหน้าต่างปัจจุบัน
trustedTypes
ให้วิธีการสร้างนโยบายสำหรับ Trusted Types
const policy = trustedTypes.createPolicy('นโยบายของฉัน', {
createHTML: (string) => string.replace(/</g, '<')
});
console.log(policy.createHTML('<div>Text</div>'));
// Output: '<div>Text</div>'
visualViewport
ให้ข้อมูลเกี่ยวกับ visual viewport
visualViewport.addEventListener('resize', () => {
console.log(`ความกว้าง viewport ใหม่: ${visualViewport.width}px`);
});
// Output: 'ความกว้าง viewport ใหม่: [ความกว้างของ visual viewport ใหม่]px'
window
แทนหน้าต่างที่มีเอกสาร DOM
window.alert('สวัสดีชาวโลก!');
// Output: 'สวัสดีชาวโลก!' (แสดงเป็น alert dialog)