การแก้ไขสตริง JavaScript เป็นกระบวนการของการฝังนิพจน์เป็นส่วนหนึ่งของสตริง เทมเพลตลิเทอรัลใช้เพื่อฝังนิพจน์ คุณเพิ่มค่าต่างๆ เช่น ตัวแปรและการคำนวณทางคณิตศาสตร์ลงในสตริงได้โดยใช้การประมาณค่า
คุณต้องการเพิ่มค่าภายในสตริง JavaScript หรือไม่? คุณได้ครอบคลุมไวยากรณ์ตามตัวอักษรของเทมเพลตแล้ว เทมเพลตช่วยให้ทำงานกับสตริงหลายบรรทัดและค่าที่ฝังภายในสตริง JavaScript ได้ง่ายขึ้น เทมเพลตคือรูปแบบการแก้ไขสตริง JavaScript
ในคู่มือนี้ เราจะพูดถึงการแก้ไขสตริงของ JavaScript เราจะหารือกันว่ามันคืออะไร มันทำงานอย่างไร และแนะนำตัวอย่างการแก้ไขสตริงเพื่อช่วยคุณในการเริ่มต้น
เริ่มกันเลย!
การแก้ไขสตริง JavaScript
คุณสามารถเพิ่มค่าลงในสตริง JavaScript ได้โดยใช้เทมเพลตตามตัวอักษร นี่คือเครื่องหมายดอลลาร์ตามด้วยวงเล็บปีกกาคู่หนึ่ง ภายในวงเล็บปีกกาควรมีนิพจน์ที่มีค่าที่คุณต้องการฝังในสตริง
เทมเพลตช่วยให้คุณฝังค่าลงในสตริงโดยไม่ต้องอาศัยการต่อกัน ในการประกาศเทมเพลตตามตัวอักษร สตริงของคุณต้องอยู่ในเครื่องหมายขีดหลัง (“) แทนเครื่องหมายอัญประกาศ
พิจารณาไวยากรณ์ต่อไปนี้:
`This is a string. Here is the value of 9 + 10: ${9 + 10}.`
เราได้ประกาศเทมเพลตตามตัวอักษรแล้ว สำนวนของเราคือ:
81% ของผู้เข้าร่วมกล่าวว่าพวกเขารู้สึกมั่นใจมากขึ้นเกี่ยวกับโอกาสในการทำงานด้านเทคโนโลยีหลังจากเข้าร่วม bootcamp จับคู่กับ Bootcamp วันนี้
ผู้สำเร็จการศึกษาจากหลักสูตร bootcamp โดยเฉลี่ยใช้เวลาน้อยกว่าหกเดือนในการเปลี่ยนอาชีพ ตั้งแต่เริ่มต้น bootcamp ไปจนถึงหางานแรก
${9 + 10}
นิพจน์นี้ประเมิน 9 + 10 ผลลัพธ์ของนิพจน์นี้จะถูกเพิ่มที่ส่วนท้ายของสตริงของเรา ก่อนที่จะหยุดเต็ม นี่เป็นเพราะเราได้เขียนนิพจน์ของเราไว้ก่อนจุดสิ้นสุด
ตัวอย่างการแก้ไขสตริง JavaScript
เทมเพลตช่วยให้คุณสามารถฝังค่าลงในสตริงได้โดยตรง พิจารณารหัสนี้:
const address_number = "10 Downing Street"; const prime_minister_address = `The Prime Minister's address is ${address_number}.`; console.log(prime_minister_address)
รหัสบรรทัดแรกกำหนดหมายเลขที่อยู่ของนายกรัฐมนตรี ต่อไป เราใช้เทมเพลตเพื่อสร้างที่อยู่แบบเต็ม ไวยากรณ์ ${} ใช้เพื่อฝังค่าลงในสตริงของเรา เราได้เพิ่มค่าของ “address_number” ลงในสตริงแล้ว
เรียกใช้รหัสของเรา:
The Prime Minister's address is 10 Downing Street
รหัสของเราได้รวมสองสตริงของเราเข้าด้วยกัน
เมื่อคุณใช้เทมเพลตลิเทอรัล คุณสามารถฝังค่าใดก็ได้ภายในลิเทอรัล ซึ่งรวมถึงสตริง ตัวเลข หรือผลลัพธ์ของการคำนวณทางคณิตศาสตร์ของ JavaScript คุณไม่จำเป็นต้องฝังเทมเพลตลิเทอรัลลงในเทมเพลตเทมเพลต
ข้อได้เปรียบที่สำคัญอย่างหนึ่งของตัวอักษรสตริงคือรูปแบบที่ชัดเจน เราสามารถฝังโค้ด JavaScript ลงในสตริงได้โดยตรง
ผสานสตริงโดยใช้การต่อกัน
เราสามารถรวมสตริงโดยใช้การต่อกัน สมมติว่าเรามีสองสตริง:
const full_address = `The Prime Minister's address is `; const address_number = `10 Downing Street`;
คุณสามารถเชื่อมสองสตริงโดยใช้เครื่องหมายบวก (+):
const prime_minister_address = full_address + address_number + "."; console.log(prime_minister_address);
คอนโซล JavaScript พิมพ์ค่าต่อไปนี้:
The Prime Minister's address is 10 Downing Street
เราได้สร้างสตริงที่รวมสองสตริงของเราสำเร็จแล้ว ในตอนท้าย เราใช้ตัวดำเนินการต่อเพื่อเพิ่มจุดเต็ม (“”) ให้กับประโยคของเรา
แต่ไวยากรณ์นี้มีข้อเสียคือ เราสามารถเพิ่มค่าที่ส่วนท้ายของสตริงเท่านั้น นี่เป็นเหตุผลสำคัญที่อยู่เบื้องหลังการแนะนำรูปแบบตัวอักษรของเทมเพลต การเพิ่มค่าตรงกลางสตริงทำได้ง่ายขึ้น
จาวาสคริปต์การแก้ไขสตริง:การคำนวณ
รหัสภายในเทมเพลตคือคำสั่ง JavaScript ซึ่งหมายความว่าคุณสามารถใช้เทมเพลตเพื่อคำนวณและฝังค่าลงในโปรแกรมได้
มาสร้างสตริงที่คำนวณราคาของเครื่องดื่มสองแก้วที่ร้านกาแฟและใส่ผลลัพธ์ลงในสตริง:
var drink1 = 2.30; var drink2 = 2.20; var bill = `The total cost of your drinks is $${drink1 + drink2}.`;
ภายในไวยากรณ์ ${} เราได้เพิ่มการคำนวณ การคำนวณนี้จะเพิ่มค่าของตัวแปร JavaScript สองตัวเข้าด้วยกัน ตัวแปรของเราคือ drink1 (2.30) และ drink2 (2.20) รวมกัน รหัสของเราส่งคืนสตริงที่มีผลรวมของค่าเหล่านี้:
The total cost of your drinks is $4.50.
จาวาสคริปต์การแก้ไขสตริง:ตัวดำเนินการแบบสามส่วน
โอเปอเรเตอร์ ternary JavaScript ช่วยให้คุณประเมินว่าคำสั่งเป็นจริงหรือเท็จ เป็นวิธีที่กระชับกว่าในการเขียนคำสั่ง if ตัวดำเนินการแบบไตรภาคมีประโยชน์อย่างยิ่งหากผลลัพธ์ของ if คำสั่งจะใช้โค้ดเพียงหนึ่งบรรทัดเท่านั้น
หากลูกค้าใช้จ่ายกาแฟมากกว่า 4.00 ดอลลาร์สหรัฐฯ พวกเขาควรได้รับใบเรียกเก็บเงิน จากนั้นควรขอให้เข้าร่วมชมรมบัตรสะสมคะแนนกาแฟ มิฉะนั้นก็ควรจะนำเสนอด้วยใบเรียกเก็บเงินของพวกเขา เราสามารถใช้ ternary operator เพื่อตรวจสอบค่าใช้จ่ายในใบเรียกเก็บเงินของลูกค้าได้:
var drink1 = 2.30; var drink2 = 2.20; var total = drink1 + drink2; var bill = `The total cost of your drinks is $${total}. ${total > 4.00 ? "Would you like to join our coffee club? It will earn you a free coffee for every ten that you buy." : ""}`; console.log(bill);
เทมเพลตของเรามีนิพจน์ที่ฝังอยู่สองนิพจน์ ขั้นแรก เราฝังค่าของ "ผลรวม" ไว้ในสตริงของเรา ต่อไป เราใช้ผู้ให้บริการแบบไตรภาคเพื่อตรวจสอบว่าควรขอให้ลูกค้าเข้าร่วมคลับบัตรสะสมคะแนนของร้านกาแฟหรือไม่
หากราคาซื้อรวมมากกว่า $4.00 ข้อความต่อไปนี้จะถูกพิมพ์ไปที่คอนโซล:
The total cost of your drinks is $4.50. Would you like to join our coffee club? It will earn you a free coffee for every ten that you buy.
มิฉะนั้น โอเปอเรเตอร์ ternary ของเราจะคืนค่าหลังเครื่องหมายทวิภาค (“:”) นี่คือค่าที่ส่งคืนเมื่อนิพจน์ประเมินเป็นเท็จ
ในตัวอย่างของเรา ค่าหลังโคลอนเป็นสตริงว่าง ซึ่งหมายความว่าหากการซื้อของลูกค้าต่ำกว่า $4.00 ระบบจะส่งคืนเฉพาะประโยคแรกของเทมเพลตของเราเท่านั้น:
The total cost of your drinks is $4.50.
บทสรุป
เทมเพลตตัวอักษรช่วยให้คุณฝังค่าภายในสตริงได้ คุณสามารถทำการคำนวณภายในเทมเพลตตามตัวอักษรได้ เราประกาศเทมเพลตโดยใช้ backticks ข้อความที่จะประเมินจะแสดงด้วยเครื่องหมายดอลลาร์และวงเล็บปีกกาคู่หนึ่งซึ่งคำสั่งนั้นปรากฏขึ้น
สำหรับคำแนะนำในการเรียนรู้เพิ่มเติมเกี่ยวกับ JavaScript โปรดอ่านคู่มือ How to Learn JavaScript