หน้าแรก
หน้าแรก
Javascript เป็นภาษาที่มีค่าผ่าน แต่สำหรับอ็อบเจ็กต์ ค่าคือการอ้างอิง ตัวอย่างเช่น หากคุณส่ง int ไปยังฟังก์ชันเป็นพารามิเตอร์และเพิ่มค่าในฟังก์ชัน ค่าของฟังก์ชันจะไม่ได้รับการอัปเดตในบริบทของผู้โทร - ตัวอย่าง let i = 0; function increment(x) { x = x + 1 console.log(x) } incr
Javascript เป็นภาษาที่มีค่าผ่าน แต่สำหรับอ็อบเจ็กต์ ค่าคือการอ้างอิง ตัวอย่างเช่น หากคุณส่ง int ไปยังฟังก์ชันเป็นพารามิเตอร์และเพิ่มค่าในฟังก์ชัน ค่าของฟังก์ชันจะไม่ได้รับการอัปเดตในบริบทของผู้โทร - ตัวอย่าง let i = 0; function increment(x) { x = x + 1 console.log(x) } incr
เมธอด Object.assign() ใช้เพื่อคัดลอกค่าของคุณสมบัติทั้งหมดของอ็อบเจ็กต์ (ระบุได้เท่านั้น) จากออบเจ็กต์ต้นทางหนึ่งรายการขึ้นไปไปยังออบเจกต์เป้าหมาย มันจะส่งคืนวัตถุเป้าหมาย ตัวอย่าง const targetObj = { a: 1, b: 2 }; const sourceObj = { b: 4, c: 5 }; const returnedTarget = Object.assign(targetObj, sou
สามารถใช้เมธอด Object.assign() เพื่อคัดลอกค่าของคุณสมบัติทั้งหมดของอ็อบเจ็กต์ (ระบุได้เท่านั้น) จากออบเจ็กต์ต้นทางหนึ่งรายการขึ้นไปไปยังออบเจ็กต์เป้าหมาย ตัวอย่างเช่น ในการคัดลอกคุณสมบัติทั้งหมดของวัตถุต้นทางไปยังวัตถุเป้าหมาย คุณสามารถใช้รหัสต่อไปนี้ - ตัวอย่าง const targetObj = { a: 1, b: 2 }; co
Web Garden เป็นระบบเว็บโฮสติ้งที่ประกอบด้วย กระบวนการ หลายขั้นตอน ซึ่งหมายความว่าเรามีเซิร์ฟเวอร์เดียวที่เราเรียกใช้หลายกระบวนการ โฮสติ้งประเภทนี้มอบความสามารถในการปรับขนาดเชิงตรรกะสำหรับเว็บแอปพลิเคชันของเรา Web Farm เป็นระบบเว็บโฮสติ้งที่ประกอบด้วย คอมพิวเตอร์ หลายเครื่อง สิ่งนี้แตกต่างจากเว็บการ
ออบเจ็กต์ WeakMap คือชุดของคู่คีย์/ค่าที่มีการอ้างอิงคีย์อย่างคร่าวๆ คีย์ต้องเป็นวัตถุและค่าสามารถเป็นค่าใดก็ได้ กรณีการใช้งานบางอย่างที่มิฉะนั้นจะทำให้หน่วยความจำรั่ว ซึ่งสามารถแก้ไขได้โดยใช้แผนที่ที่อ่อนแอ - การรักษาข้อมูลส่วนตัวเกี่ยวกับวัตถุเฉพาะและให้สิทธิ์การเข้าถึงแก่ผู้ที่มีการอ้างอิงถึ
ต่อไปนี้เป็นวิธีการบางส่วนที่มีอยู่ในอินสแตนซ์ที่อ่อนแอในจาวาสคริปต์ - 1. WeakMap.prototype.delete(คีย์) ลบค่าใดๆ ที่เกี่ยวข้องกับคีย์ WeakMap.prototype.has(key) จะคืนค่าเท็จในภายหลัง 2. WeakMap.prototype.get(คีย์) ส่งคืนค่าที่เกี่ยวข้องกับคีย์ หรือไม่ได้กำหนดหากไม่มี 3. WeakMap.prototype.has(ค
วิธีการที่ชัดเจนบนอ่อนแอจะลบคู่คีย์/ค่าทั้งหมดออกจากวัตถุ WeakMap วิธีนี้ถูกลบออกจากข้อมูลจำเพาะและสามารถเพิ่มกลับได้โดยการห่อวัตถุ WeakMap ด้วยการสนับสนุนเพิ่มเติมสำหรับวิธีการที่ชัดเจน ตัวอย่าง class ClearableWeakMap { constructor(init) { this._wm = new WeakMap(i
อาร์เรย์ที่พิมพ์ด้วย JavaScript เป็นอ็อบเจ็กต์ที่มีลักษณะคล้ายอาร์เรย์และมีกลไกในการเข้าถึงข้อมูลไบนารีดิบ ออบเจ็กต์อาร์เรย์จะขยายและย่อขนาดแบบไดนามิก และสามารถมีค่า JavaScript ใดก็ได้ เอ็นจิ้น JavaScript ทำการเพิ่มประสิทธิภาพเพื่อให้อาร์เรย์เหล่านี้รวดเร็ว หมายเหตุ − อาร์เรย์ที่พิมพ์จะต้องไม่สับ
โดยไม่คำนึงถึงภาษาการเขียนโปรแกรม วงจรชีวิตของหน่วยความจำมักจะเหมือนเดิมเสมอ - จัดสรรหน่วยความจำที่คุณต้องการ ใช้หน่วยความจำที่จัดสรรไว้ (อ่าน เขียน) ปล่อยหน่วยความจำที่จัดสรรเมื่อไม่ต้องการอีกต่อไป ส่วนที่สองมีความชัดเจนในทุกภาษา นักพัฒนาจำเป็นต้องใช้หน่วยความจำที่จัดสรร ส่วนแรกและส่วนสุดท้ายมี
ใน JavaScript ค่า double และ triple เท่ากับใช้สำหรับเปรียบเทียบระหว่างตัวถูกดำเนินการสองตัว ความแตกต่างระหว่างค่าเท่ากันทั้งสองคือ: ซีเนียร์ เลขที่ คีย์ Double Equals (==) Triple Equals (===) 1 การตั้งชื่อ Double เท่ากับตั้งชื่อเป็น ตัวดำเนินการความเท่าเทียมกัน . Triple เท่ากับตั้งชื่อเป็น Identit
การรวบรวมขยะ (GC) เป็นรูปแบบหนึ่งของการจัดการหน่วยความจำอัตโนมัติ ตัวรวบรวมขยะหรือตัวรวบรวมเพียงพยายามเรียกคืนขยะหรือหน่วยความจำที่ถูกครอบครองโดยอ็อบเจ็กต์ที่ไม่ได้ใช้งานโดยโปรแกรมอีกต่อไป ปัญหาทั่วไปของการค้นหาโดยอัตโนมัติว่าหน่วยความจำบางส่วน ไม่ต้องการอีกต่อไป หรือไม่นั้นไม่สามารถตัดสินใจได้ ด้วย
การอ้างอิงแบบวงกลมจะเกิดขึ้นหากวัตถุสองชิ้นที่แยกจากกันผ่านการอ้างอิงถึงกัน ในเบราว์เซอร์รุ่นเก่า การอ้างอิงแบบวงกลมเป็นสาเหตุของหน่วยความจำรั่ว ด้วยการปรับปรุงอัลกอริธึมการรวบรวมขยะ ซึ่งขณะนี้สามารถจัดการกับวงจรและการพึ่งพาแบบวนรอบได้ดี จึงไม่เป็นปัญหาอีกต่อไป อย่างไรก็ตาม จากมุมมองของการออกแบบล้
การอ้างอิงแบบวงกลมจะเกิดขึ้นหากวัตถุสองชิ้นที่แยกจากกันผ่านการอ้างอิงถึงกัน ในเบราว์เซอร์รุ่นเก่า การอ้างอิงแบบวงกลมเป็นสาเหตุของหน่วยความจำรั่ว ด้วยการปรับปรุงอัลกอริธึมการรวบรวมขยะ ซึ่งขณะนี้สามารถจัดการกับวงจรและการพึ่งพาแบบวนรอบได้ดี จึงไม่เป็นปัญหาอีกต่อไป อย่างไรก็ตาม จากมุมมองของการออกแบบล้
ทดสอบการทดสอบการจับคู่และส่งคืนบูลีนในขณะที่ exec จับกลุ่มและจับคู่ regex กับอินพุต หากคุณต้องการทดสอบสตริงอินพุตเพื่อให้ตรงกับนิพจน์ทั่วไปเท่านั้น RegExp.test ก็เหมาะสมที่สุด มันจะให้ค่าส่งคืนบูลีนซึ่งทำให้เหมาะสำหรับเงื่อนไข RegExp.exec ให้ค่าส่งคืนเหมือนอาร์เรย์พร้อมแคปเจอร์กรุ๊ปและดัชนีที่ตรงก
คุณไม่สามารถอ่านหรือเขียนไฟล์ใน JS ทางฝั่งไคลเอ็นต์ (เบราว์เซอร์) สามารถทำได้บนฝั่งเซิร์ฟเวอร์โดยใช้โมดูล fs ใน Node.js มีฟังก์ชันซิงค์และอะซิงโครนัสเพื่ออ่านและเขียนไฟล์บนระบบไฟล์ ให้เราดูตัวอย่างของการอ่านและเขียนไฟล์โดยใช้โมดูล fs บน node.js ให้เราสร้างไฟล์ js ชื่อ main.js โดยมีรหัสดังต่อไปนี้ -
ฟังก์ชัน parseInt ที่มีอยู่ใน JavaScript มีลายเซ็นต่อไปนี้ - parseInt(string, radix); โดยที่พารามิเตอร์มีดังต่อไปนี้ - สตริง − ค่าที่จะแยกวิเคราะห์ หากอาร์กิวเมนต์นี้ไม่ใช่สตริง อาร์กิวเมนต์นี้จะถูกแปลงเป็นอาร์กิวเมนต์โดยใช้เมธอด ToString ช่องว่างนำหน้าในอาร์กิวเมนต์นี้จะถูกละเว้น ราดิกซ์ − จำน
มีกล่องป๊อปอัป 3 ประเภทใน JavaScript เหล่านี้คือ − 1. แจ้งเตือน − วิธี Window.alert() จะแสดงกล่องโต้ตอบการแจ้งเตือนพร้อมเนื้อหาที่ระบุซึ่งเป็นทางเลือกและปุ่ม OK ตัวอย่างเช่น หากคุณเรียกใช้สคริปต์ต่อไปนี้ สคริปต์จะเปิดกล่องแจ้งเตือนที่มีเนื้อหาว่า นี่คือการแจ้งเตือน พร้อมปุ่มยืนยัน ตัวอย่าง <sc
การใช้ HTML ภายในใน JavaScript มีข้อเสียดังต่อไปนี้ - ไม่มีการผนวกการสนับสนุนโดยไม่ต้องแยกวิเคราะห์ HTML ภายในทั้งหมด สิ่งนี้ทำให้การเปลี่ยนแปลง innerHTML ทำได้ช้ามาก ตัวอย่างเช่น สำหรับการต่อท้ายแท็ก html คุณจะต้องทำสิ่งต่อไปนี้ − let myDiv = document.querySelector('#myDiv') // Reparses t
ในการตรวจหาระบบปฏิบัติการบนเครื่องไคลเอนต์ สคริปต์ของคุณสามารถวิเคราะห์ค่าของ navigator.appVersion หรือ navigator.userAgent ให้เราดูการตรวจหา OS ไคลเอ็นต์โดยใช้สคริปต์ง่ายๆ - ตัวอย่าง var operatingSystem = "Unknown OS"; // Check For Windows if (navigator.appVersion.indexOf("Win"