Mảng trong JS là một chiều.
Vì vậy var arr = ["a" , "b" , "c" , "d"][1,2,3];
Đây [1,2,3]
đại diện cho các chỉ số.
Và dấu phẩy là toán tử được đặt trước ít nhất nên [1,2,3]
sẽ trả lại cho bạn 3
(tức là phần tử phù hợp nhất luôn).
Do đó
Kết quả sẽ trả lại cho bạn những giá trị tại index 3
đó là d
Update:
Hãy xem một số điểm nhiều hơn cho comma
điều hành:
From MDN:
Dấu phẩy nhà điều hành đánh giá từng toán hạng của nó (từ trái sang phải) và trả về giá trị của toán hạng cuối cùng.
Vì vậy, Nó có nghĩa là:
var a = (10, 18);
a; //18
Cũng lưu ý rằng nó là điều cần thiết để đề cập đến chúng ngoặc bên trong khi gán cho một biến.
Nếu bạn cố gắng một cái gì đó như:
var a = 1,2,3;
a; // will return 1
Vì vậy, điều quan trọng là bạn bọc chúng bằng ()
.
Khi nào bạn sẽ sử dụng toán tử ,
?
Bạn có thể sử dụng toán tử dấu phẩy khi bạn muốn bao gồm nhiều biểu thức ở vị trí yêu cầu một biểu thức duy nhất. Việc sử dụng phổ biến nhất của toán tử này là cung cấp nhiều thông số trong vòng lặp cho vòng lặp.
for (var i = 0, j = 9; i <= 9; i++, j--)
Bây giờ bạn đã hiểu về comma
điều hành, Hãy xem vài ví dụ nữa để kiểm tra hiểu biết của chúng tôi:
1. var a = (1,3)/(2,1);
a // what will be the o/p
2. var a = ["Stack", "OverFlow","is","Awesome"][1,3,2][2,0]
a // What will be the o/p
3. var a = (true,0,1), b, c;
if(b,c,a) {
console.log("Will it execute?");
}
Đúng. OP, ít nhất nó không giống như thế này: 'var wtf =" test "[1,2,3];' có lẽ còn khó hiểu hơn;) –
@DavidTitarenco đó là một cái tốt :) – mohamedrias
Người đàn ông tuyệt vời! Tôi đã học được một cái gì đó mới ngày hôm nay. Tôi không biết rằng dấu phẩy có một ý nghĩa đặc biệt trong ngôn ngữ trước đây. Cảm ơn –