
การเข้ารหัส JSON
json.Marshal, json.Unmarshal, struct tags, custom marshaling, streaming, RawMessage
1ฟังก์ชันใดที่ใช้เข้ารหัส struct ของ Go ให้เป็น JSON?
ฟังก์ชันใดที่ใช้เข้ารหัส struct ของ Go ให้เป็น JSON?
คำตอบ
json.Marshal เข้ารหัส struct ของ Go ให้เป็นไบต์ JSON ฟังก์ชันนี้อ่าน struct tags เพื่อปรับแต่งการ serialize (เปลี่ยนชื่อ, ละเว้นฟิลด์) สำหรับการ streaming ไปยัง io.Writer การใช้ json.NewEncoder ช่วยหลีกเลี่ยงการสร้าง buffer ตัวกลางในหน่วยความจำ
2ฟังก์ชันใดที่ใช้ถอดรหัส JSON ให้เป็น struct ของ Go?
ฟังก์ชันใดที่ใช้ถอดรหัส JSON ให้เป็น struct ของ Go?
คำตอบ
json.Unmarshal ถอดรหัสไบต์ JSON ให้เป็น struct ของ Go ต้องส่ง pointer ไปยัง struct เป้าหมายเพื่อให้ข้อมูลถูกเขียนอย่างถูกต้อง สำหรับการ streaming จาก io.Reader นั้น json.NewDecoder มีประสิทธิภาพมากกว่าเพราะหลีกเลี่ยงการโหลด JSON ทั้งหมดเข้าหน่วยความจำ
3JSON struct tag ใดที่ใช้เปลี่ยนชื่อฟิลด์ระหว่างการ serialize?
JSON struct tag ใดที่ใช้เปลี่ยนชื่อฟิลด์ระหว่างการ serialize?
คำตอบ
แท็ก json:"custom_name" ช่วยให้เปลี่ยนชื่อฟิลด์ระหว่างการ serialize JSON ได้ ตัวอย่างเช่น ฟิลด์ UserID สามารถกลายเป็น user_id ใน JSON มีประโยชน์ในการปฏิบัติตามแนวทางการตั้งชื่อ (snake_case ใน JSON เทียบกับ CamelCase ใน Go)
JSON struct tag ใดที่ตัดฟิลด์ออกจากการ serialize อย่างสมบูรณ์?
JSON struct tag ใดที่ใช้ละเว้นฟิลด์หากค่าของมันว่างเปล่า?
+17 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Go อื่นๆ
พื้นฐาน Go
โครงสร้างข้อมูล Go
อินเทอร์เฟซใน Go
การจัดการข้อผิดพลาด
พื้นฐาน Goroutine
Channels
Go Modules
เซิร์ฟเวอร์ HTTP
ไคลเอนต์ HTTP
Database/SQL
แพ็กเกจ context
Testing
รูปแบบ Concurrency
ไพรมิทีฟการซิงโครไนซ์
เฟรมเวิร์กเว็บ Go
การออกแบบ REST API
gRPC
Reflection
การจัดการหน่วยความจำ
การเพิ่มประสิทธิภาพการทำงาน
Generics
Go Design Patterns
Microservices
ความปลอดภัยและการยืนยันตัวตน
Docker & Containerization
Kubernetes Basics
Go ขั้นสูง
การพัฒนา CLI
เชี่ยวชาญ Go สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี