Thắc mắc về dấu phẩy của phần tử cuối cùng trong một array & object

Em chào các bác ạ,

// Cách cũ 
const arr1 = [1,2,3]
const obj1 = [ 
              {age: 18},
              {age: 19},
  			  {age: 20},
              ]

// Cách mới

const arr2 = [1,2,3,];
const obj2 = [ 
              {age: 18},
              {age: 19},
  			  {age: 20}
              ];

Các bác để ý phần tử số 3 và phần tử {age: 20} giúp em.
Em nhớ là ECMAScript 5 trở về trước nó sẽ báo lỗi nếu dư dấu phẩy ở cuối, các ngôn ngữ khác cũng báo lỗi syntax tương tự. Nhưng kể từ ES7, ES8 gì đó JS đã được cập nhật tính năng này mà không bị báo lỗi syntax.

Em thấy 2 lợi ích của nó là:

  • Khi sửa code cần add phần tử mới thủ công, dev thường quên thêm dấu phấy ở phần tử trước đó dẫn đến lỗi syntax.
  • Khi commit lên git, lúc xem git diff thì tránh được 1 dòng change vô nghĩa mà chỉ thêm có 1 dấu phẩy.

Em muốn tìm xem vấn đề này nó đã được thêm vào ở version nào của JS, tên gọi của nó là gì, nhưng không biết keyword và không biết search google kiểu gì ạ.

nó gọi là trailing commas

6 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?