Google Apps Script:
การแทรกค่าลงในสตริง
วิธีการ:
ใน Google Apps Script, การแทรกสตริงนั้นทำได้ผ่านทาง template literals ซึ่งเป็น string literals ที่อนุญาตให้ฝังนิพจน์ได้โดยใช้ backticks (`) แทนที่จะใช้เครื่องหมายอ้างอิงทั่วไป นี่คือวิธีการใช้งาน:
// ตัวอย่างพื้นฐาน
function basicInterpolationExample() {
const user = 'Alice';
console.log(`สวัสดี, ${user}!`); // ผลลัพธ์: สวัสดี, Alice!
}
// การใช้นิพจน์ต่างๆ
function expressionInterpolationExample() {
const a = 5;
const b = 10;
console.log(`ห้าบวกสิบเท่ากับ ${a + b}.`); // ผลลัพธ์: ห้าบวกสิบเท่ากับ 15.
}
// สตริงหลายบรรทัด
function multiLineStringExample() {
const item = 'Google Apps Script';
console.log(`นี่คือสตริงหลายบรรทัด:
สวัสดีทุกคน,
เรากำลังพูดถึง ${item} วันนี้.`);
// ผลลัพธ์:
// นี่คือสตริงหลายบรรทัด:
// สวัสดีทุกคน,
// เรากำลังพูดถึง Google Apps Script วันนี้.
}
basicInterpolationExample();
expressionInterpolationExample();
multiLineStringExample();
ตัวอย่างเหล่านี้แสดงการใช้งานพื้นฐาน การฝังนิพจน์ และการสร้างสตริงหลายบรรทัดด้วยค่าที่ถูกแทรก
ลึกซึ้ง
Template literals รวมถึงการแทรกสตริงถูกนำมาใช้ใน ECMAScript 2015 (ES6) และต่อมาถูกนำไปใช้ใน Google Apps Script ก่อนหน้านี้ โปรแกรมเมอร์ต้องพึ่งพิงการต่อสตริงอย่างเดียวซึ่งอาจยุ่งยากสำหรับสตริงที่ซับซ้อนหรือเมื่อผสานค่าตัวแปรจำนวนมาก
// วิธีเก่า (ก่อน ES6)
var user = 'Bob';
console.log('สวัสดี, ' + user + '!');
ถึงแม้ว่าการแทรกสตริงเป็นคุณสมบัติที่ทรงพลัง มันก็สำคัญที่จะต้องตระหนักถึงบริบทที่ใช้งาน เช่น การฝังข้อมูลผู้ใช้โดยตรงโดยไม่มีการทำความสะอาดข้อมูลที่เหมาะสมอาจนำไปสู่ปัญหาด้านความปลอดภัย เช่น การโจมตีด้วยการแทรกข้อมูล ผู้พัฒนา Google Apps Script ควรตรวจสอบหรือทำความสะอาดเนื้อหาที่แทรกเข้ากับสตริงอย่างถูกต้อง
เมื่อเปรียบเทียบกับภาษาโปรแกรมอื่นๆ แนวคิดของการแทรกสตริงมีอยู่อย่างกว้างขวาง โดยมีไวยากรณ์ที่แตกต่างกัน Python ใช้ f-strings หรือเมธอด format
, Ruby ใช้ #{}
ภายในสตริงที่อ้างด้วยเครื่องหมายคำพูดคู่ และภาษาสมัยใหม่หลายภาษาได้รับการนำคุณสมบัตินี้ไปใช้เนื่องจากการอ่านและความสะดวกที่เสนอ
แม้ว่า Google Apps Script จะไม่มีคุณสมบัติการแทรกแบบเพิ่มเติมนอกเหนือจากที่มีในมาตรฐาน ECMAScript ความสามารถที่มีอยู่นั้นทรงพลังและเพียงพอสำหรับกรณีการใช้งานส่วนใหญ่ นักพัฒนาที่มาจากภาษาที่มีกลไกการแทรกที่ซับซ้อนกว่าอาจจำเป็นต้องปรับความคาดหวังของตน แต่จะพอใจกับความเรียบง่ายและประสิทธิภาพของ template literals ใน Google Apps Script