1. ฝังกฎ
ควรวางโปรแกรม JavaScript ในไฟล์. js ให้มากที่สุด เมื่อคุณต้องการเรียกพวกเขาคุณควรรวมไว้ในรูปแบบของ <script src = "filename.js"> บนหน้า หากรหัส JavaScript ไม่ได้ทุ่มเทให้กับหน้าลองหลีกเลี่ยงการเขียนรหัส JavaScript โดยตรงบนหน้า
2. จัดตำแหน่งการเยื้องและการแบ่งสาย
a) การเยื้อง
มาตรฐานการเยื้องเดียวกันควรนำมาใช้ในระบบเดียวกัน บทความนี้สนับสนุนว่าขนาดการเยื้องคือ 4 ช่องว่าง คอมไพเลอร์แต่ละตัวกำหนดขนาดว่างที่แตกต่างกันสำหรับปุ่มแท็บ ขอแนะนำให้รีเซ็ตปุ่มทางลัดแท็บในตัวแก้ไขเป็น 4 ช่องว่างเมื่อตั้งค่าสภาพแวดล้อมการพัฒนา คอมไพเลอร์ส่วนใหญ่มีคุณสมบัตินี้ มิฉะนั้นขอแนะนำให้กด 4 ช่องว่างเพื่อเยื้อง
b) เส้นแบ่งสาย
การแบ่งสายต้องเป็น:
หลังจากแต่ละคำสั่งอิสระสิ้นสุดลง;
ถ้าอย่างอื่นจับในที่สุดในขณะที่ก่อนคำหลักเช่นคำหลัก;
เมื่อผู้ประกอบการแบ่งบรรทัดผู้ประกอบการจะต้องอยู่ที่จุดเริ่มต้นของบรรทัดใหม่
สำหรับการแบ่งบรรทัดที่เกิดขึ้นเมื่อความยาวบรรทัดเดียวเกินขีด จำกัด ให้แยกนโยบายอ้างอิงตามความยาวของเส้น
1). สตริงยาวเกินไปและถูกตัดทอน
แต่ละบรรทัดของรหัสควรน้อยกว่า 80 อักขระ หากรหัสยาวลองทำลายบรรทัด ควรเลือกบรรทัดใหม่หลังจากตัวดำเนินการและเครื่องหมายวรรคตอนโดยเฉพาะอย่างยิ่งหลังจาก semicolon ";" หรือเครื่องหมายจุลภาค "," บรรทัดถัดไปของรหัสจะเยื้อง 4 ช่องว่างเทียบกับบรรทัดก่อนหน้า สิ่งนี้สามารถป้องกันข้อผิดพลาดที่ขาดหายไปจากรหัสที่เกิดจากการคัดลอกและเพิ่มความสามารถในการอ่าน
ตัดทอนสตริงด้วยความยาวที่แน่นอนและใช้ตัวดำเนินการ + เพื่อเชื่อมต่อ พยายามที่จะแสดงความหมายให้มากที่สุดเท่าที่จะเป็นไปได้เช่นไม่ทำลายคำนามที่สมบูรณ์ โดยเฉพาะอย่างยิ่งสำหรับการประกบของชิ้นส่วน HTML โครงสร้างเดียวกับ HTML จะถูกเก็บรักษาไว้โดยการเยื้อง:
นอกจากนี้คุณยังสามารถใช้อาร์เรย์เพื่อประกบกันซึ่งง่ายต่อการปรับการเยื้องกว่าการดำเนินการ +:
2). ผู้ประกอบการที่มีความยาวเกินไป
ผู้ประกอบการไตรภาคประกอบด้วย 3 ส่วนดังนั้นการแบ่งสายของมันควรสร้าง 3 สถานการณ์ที่แตกต่างกันตามความยาวของแต่ละส่วน:
สถานการณ์ต่อไปนี้จะไม่เกิดขึ้น:
3). การรวมกันของเงื่อนไขเชิงตรรกะที่ยาวเกินไป
เมื่ออักขระ 80 ตัวไม่สามารถตอบสนองความต้องการได้เนื่องจากการรวมกันที่ซับซ้อนของเงื่อนไขเชิงตรรกะแต่ละเงื่อนไขควรถูกวางอย่างอิสระจากหนึ่งบรรทัดและควรวางตัวดำเนินการเชิงตรรกะที่จุดเริ่มต้นของบรรทัดสำหรับการแยกหรือส่วนหนึ่งของตรรกะควรคั่นด้วยการผสมผสานเชิงตรรกะ ในที่สุดวางวงเล็บปิด) และวงเล็บเปิด {บนบรรทัดอิสระเพื่อให้แน่ใจว่าบล็อกคำสั่งที่มี IF สามารถระบุได้อย่างง่ายดาย ชอบ:
4). JSON และอาร์เรย์ยาวมากเกินไป
หากมีคุณสมบัติของวัตถุมากมายทำให้ทรัพย์สินแต่ละแห่งใช้พื้นที่มากเกินไปมันสามารถจัดระเบียบได้ด้วยความหมายหรือตรรกะเช่น:
ผ่านกลุ่ม 5 กลุ่มแต่ละแถวจะถูกควบคุมภายในช่วงที่เหมาะสมและแบ่งกลุ่มอย่างมีเหตุผล สำหรับอาร์เรย์ที่มีโครงการเพิ่มเติมสามารถใช้วิธีเดียวกันได้เช่น:
5) คำสั่ง Return
หากการดำเนินการนิพจน์ถูกใช้เป็นค่าส่งคืนโปรดวางนิพจน์และส่งคืนในบรรทัดเดียวกันเพื่อหลีกเลี่ยงการตีความใหม่ที่ถูกตีความผิดว่าเป็นจุดสิ้นสุดของคำสั่งและทำให้เกิดข้อผิดพลาดในการส่งคืน หากไม่มีนิพจน์ถูกส่งคืนหลังจากคำหลักส่งคืนจะส่งคืนที่ไม่ได้กำหนดจะถูกส่งคืน ค่าผลตอบแทนเริ่มต้นของตัวสร้างคือสิ่งนี้
ตัวอย่าง:
3. การตั้งชื่อ
วิธีการตั้งชื่อมักจะมีหมวดหมู่ต่อไปนี้:
a). คำอธิบายของระบบการตั้งชื่อ
1). camel wenenclature เช่น Thisisanapple
2). Pascal Nomenclature เช่น Thisisanapple
3). ขีดเส้นใต้ชื่อเช่น this_is_an_apple ・
4). ระบบการตั้งชื่อของการทำเครื่องหมายกลางเป็นเหมือนสิ่งนี้-an-apple
ขึ้นอยู่กับเนื้อหาประเภทต่าง ๆ การตั้งชื่อดังต่อไปนี้จะต้องนำมาใช้อย่างเคร่งครัด:
b). ชื่อที่ใช้งานได้: ต้องใช้ Camel Premenclature
c) ต้องใช้ชื่อพารามิเตอร์: Camel Premenclature
d). ชื่อฟังก์ชั่น: ต้องใช้ระบบการตั้งชื่ออูฐ
e). ต้องใช้วิธี/คุณสมบัติ: Camel Premenclature
f). Private (ได้รับการปกป้อง) สมาชิก: ต้องขีดเส้นใต้ _begin
g). ชื่อคงที่: เงินทุนทั้งหมดขีดความสามารถต้องใช้ระบบการตั้งชื่อเช่น is_debug_enabled
h). ชื่อคลาส: ต้องใช้ระบบการตั้งชื่อ Pascal
ฉัน). ชื่อการแจงนับ: ต้องใช้ระบบการตั้งชื่อ Pascal
j). คุณสมบัติการแจกแจง: การตั้งชื่อย้ำต้องใช้ในเมืองหลวงทั้งหมด
k) เนมสเปซ: ต้องใช้ระบบการตั้งชื่ออูฐ
l) .Semantics: การตั้งชื่อยังต้องให้ความสนใจกับความหมายเช่น:
คำนามควรใช้สำหรับชื่อตัวแปร
ประเภทบูลีนควรเริ่มต้นด้วย IS, มี ฯลฯ เพื่อระบุประเภทของมัน -
ชื่อฟังก์ชั่นควรใช้วลีคำกริยาวัตถุ
ชื่อคลาสควรทำด้วยคำนาม
4. ความคิดเห็น
ความคิดเห็นควรจะง่ายที่สุดและชัดเจนที่สุดเท่าที่จะทำได้ มุ่งเน้นไปที่ความหมายของความคิดเห็นและใส่คำอธิบายประกอบชิ้นส่วนที่ใช้งานง่ายน้อยกว่า:
(แน่นอนไม่แนะนำให้ใช้การกำหนดตัวแปรทั่วโลกโดยตรง)
นอกจากนี้ความคิดเห็นของ JavaScript มีสองประเภทของ "//" และ "/ * ...... */" ขอแนะนำให้ใช้ "//" เป็นบรรทัดความคิดเห็นของรหัสและแบบฟอร์ม "/ * .... */" ใช้เป็นการยกเลิกส่วนโค้ดทั้งหมดหรือในการประกาศอย่างเป็นทางการมากขึ้นเช่นคำอธิบายของพารามิเตอร์ฟังก์ชันฟังก์ชันฟังก์ชันไฟล์ ฯลฯ :
นอกจากนี้เมื่อคัดลอกและวางคุณควรให้ความสนใจว่าความคิดเห็นนั้นสอดคล้องกับรหัสหรือไม่
5. คำสั่ง
1). การประกาศตัวแปร
แม้ว่าภาษาจาวาสคริปต์ไม่จำเป็นต้องมีการประกาศตัวแปรก่อนที่จะใช้ แต่เราควรพัฒนานิสัยที่ดีนี้ สิ่งนี้ทำให้ง่ายต่อการตรวจจับตัวแปรที่ไม่ได้ประกาศหลีกเลี่ยงการกลายเป็นตัวแปรทั่วโลกที่ซ่อนอยู่และทำให้เกิดอันตรายที่ซ่อนอยู่
ในตอนต้นของฟังก์ชั่นคุณควรใช้คำหลัก VAR ก่อนเพื่อประกาศตัวแปรท้องถิ่นที่จะใช้ในฟังก์ชั่นแสดงความคิดเห็นเกี่ยวกับฟังก์ชั่นและความหมายของตัวแทนของตัวแปรและควรจัดเรียงตามลำดับตัวอักษร ตัวแปรแต่ละตัวใช้บรรทัดเดียวเพื่อเพิ่มความคิดเห็น นี่เป็นเพราะเฉพาะ {} ของฟังก์ชั่นใน JavaScript ระบุขอบเขตตัวแปรท้องถิ่นที่ประกาศด้วยคำหลัก VAR นั้นใช้ได้เฉพาะภายในฟังก์ชันในขณะที่ตัวแปรที่ไม่ได้ประกาศโดย VAR ถือเป็นตัวแปรส่วนกลาง ตัวอย่าง:
มีความแตกต่างระหว่าง valuea ตัวแปรที่ประกาศด้วย VAR และค่าตัวแปรที่ประกาศโดยไม่มีการประกาศ เป็นสิ่งสำคัญอย่างยิ่งที่จะต้องทราบว่าตัวแปรที่ประกาศด้วย VAR ภายในฟังก์ชั่นเป็นตัวแปรท้องถิ่นซึ่งสามารถหลีกเลี่ยงข้อผิดพลาดที่เกิดจากชื่อเดียวกันกับตัวแปรท้องถิ่นและตัวแปรส่วนกลางได้อย่างมีประสิทธิภาพ
2). การประกาศฟังก์ชั่น
ควรมีการประกาศฟังก์ชั่นก่อนการโทรและฟังก์ชั่นภายในควรประกาศหลังจากคำสั่ง VAR ที่ประกาศตัวแปรภายในซึ่งสามารถระบุขอบเขตของตัวแปรภายในและฟังก์ชั่นภายในได้อย่างชัดเจน
นอกจากนี้ควรมีช่องว่างระหว่างชื่อฟังก์ชั่นทันทีระหว่างตัวยึดซ้าย '(' และตัวยึดปิด ')' และ '{' ต่อไปนี้เพื่อแสดงชื่อฟังก์ชั่นอย่างชัดเจนด้วยส่วนพารามิเตอร์และจุดเริ่มต้นของร่างกายฟังก์ชั่น หากฟังก์ชั่นเป็นฟังก์ชั่นที่ไม่ระบุชื่อ/นิรนามให้ออกจากช่องว่างระหว่างคำหลักของฟังก์ชั่นและตัวยึดเปิด '(' มิฉะนั้นอาจถูกเข้าใจผิดว่าเป็นชื่อฟังก์ชันของฟังก์ชั่น
ตัวอย่างของการประกาศฟังก์ชั่นภายใน:
จากผลลัพธ์ของตัวอย่างข้างต้นจะเห็นได้ว่าฟังก์ชั่น INF () มีผลเฉพาะภายในฟังก์ชัน OUTF () และตัวแปรท้องถิ่น innera จะมีผลต่อขอบเขตของฟังก์ชันภายใน วิธีการเข้ารหัสนี้ทำให้ขอบเขตของตัวแปรและฟังก์ชั่นชัดเจน