Đôi khi bạn có thể cần gán cùng một giá trị cho nhiều biến. Trong bài viết này, tôi sẽ chỉ cho bạn chính xác cách gán cùng một giá trị cho nhiều biến bằng các phương pháp khác nhau
Phương pháp 1. Sử dụng dấu bằng [=] liên tiếp
Bạn có thể đặt nhiều biến thành cùng một giá trị trong JavaScript bằng cách sử dụng dấu bằng [=] liên tiếp giữa các tên biến và gán một giá trị duy nhất ở cuối khi khai báo biến
Ví dụ
var a = b = c = 10;
Đoạn mã trên tương đương với
var c = 10;
var b = c;
var a = b;
Bạn cũng có thể khai báo biến trước rồi gán giá trị sau
Ví dụ
var a, b, c;
a = b = c = 10;
Bạn cũng có thể sử dụng từ khóa 'let' hoặc 'const' thay vì 'var' để tạo các biến
Ví dụ
let a = b = c = 10;
const a = b = c = 10;
Bạn cũng có thể tạo một biến không được khai báo mà không cần sử dụng bất kỳ từ khóa nào
Ví dụ
a = b = c = 10;
Nếu bạn muốn gán các giá trị khác nhau cho các biến khác nhau, bạn cũng có thể thực hiện việc đó bằng cú pháp bên dưới
var a = 2;
var b = 3;
Chúng ta cũng có thể gán các giá trị khác nhau cho các biến khác nhau trong cùng một dòng mã
Ví dụ
var a = 2, b = 3;
Sau khi gán cùng một giá trị cho nhiều biến, nếu chúng ta cập nhật bất kỳ biến nào, nó sẽ không ảnh hưởng đến các biến khác
Trong ví dụ bên dưới, các biến a, b và c ban đầu được gán cho 10 và sau đó b được đổi thành 20
________số 8Như bạn có thể thấy từ ví dụ trên, chỉ có giá trị của biến b được thay đổi thành 20. Biến a và c không bị ảnh hưởng khi chúng ta cập nhật giá trị của biến b vì tất cả các biến a, b, c đều được gán giá trị nguyên hàm
Các biến được gán với các giá trị nguyên thủy như số, chuỗi, boolean, bigint, không xác định, ký hiệu và null sẽ được thay thế khi một giá trị mới được gán cho cùng một biến vì các giá trị nguyên thủy là bất biến. tôi. e. bản thân giá trị không thể thay đổi nhưng biến có thể được thay thế. Điều tương tự không xảy ra với các giá trị không nguyên thủy
Bạn cần hết sức cẩn thận khi gán cùng một giá trị không nguyên thủy như mảng, hàm và đối tượng cho nhiều biến vì các giá trị không nguyên thủy có thể thay đổi được. tôi. e. bản thân giá trị có thể được thay đổi. Vì vậy, giá trị sẽ được thay đổi thay vì biến được thay thế
Nếu bạn sử dụng dấu bằng [=] liên tiếp để tạo nhiều biến có cùng giá trị không nguyên thủy. Nếu bạn cập nhật giá trị của một biến, giá trị của tất cả các biến cũng sẽ được cập nhật
Ví dụ
var a = b = [1, 2, 3];
console.log["a: " + a];
console.log["b: " + b];
b[0] = 44;
console.log["a: " + a];
console.log["b: " + b];
Như bạn có thể thấy từ ví dụ trên, nếu chúng ta cập nhật giá trị của biến a, giá trị của cả hai biến sẽ được cập nhật. Điều này xảy ra vì cả hai biến a và b đều trỏ đến cùng một đối tượng mảng. Và nếu chúng tôi cập nhật giá trị của một biến thì các biến khác cũng bị ảnh hưởng
Vì vậy, nếu bạn muốn xử lý chúng một cách riêng biệt thì bạn cần phải phân công chúng một cách riêng biệt.
var c = 10;
var b = c;
var a = b;
0Phương pháp 2. Sử dụng cú pháp gán phá hủy
Cú pháp gán cấu trúc là một biểu thức javascript giúp chúng ta giải nén các giá trị từ mảng hoặc đối tượng thành các biến khác nhau
Ví dụ
var c = 10;
var b = c;
var a = b;
1Chúng ta cũng có thể gán nhiều giá trị cho cùng một giá trị bằng cách sử dụng cú pháp gán phá hủy kết hợp với hàm điền
var c = 10;
var b = c;
var a = b;
2bài viết liên quan
Python có thể thay thế JavaScript không?
Bài viết mới nhất
Python – Sử dụng Tuple làm Khóa từ điển hoặc Giá trị Làm cách nào để in dấu ngoặc kép trong một chuỗi bằng Python?
Một biến là một “bộ lưu trữ được đặt tên” cho dữ liệu. Chúng tôi có thể sử dụng các biến để lưu trữ quà tặng, khách truy cập và dữ liệu khác
Để tạo một biến trong JavaScript, hãy sử dụng từ khóa
var c = 10;
var b = c;
var a = b;
33Câu lệnh dưới đây tạo ra [nói cách khác. tuyên bố] một biến có tên “tin nhắn”
var c = 10;
var b = c;
var a = b;
4Bây giờ, chúng ta có thể đưa một số dữ liệu vào đó bằng cách sử dụng toán tử gán
var c = 10;
var b = c;
var a = b;
34var c = 10;
var b = c;
var a = b;
6Chuỗi hiện được lưu vào vùng bộ nhớ được liên kết với biến. Chúng ta có thể truy cập nó bằng cách sử dụng tên biến
var c = 10;
var b = c;
var a = b;
3Để ngắn gọn, chúng ta có thể kết hợp phần khai báo và gán biến vào một dòng duy nhất
var c = 10;
var b = c;
var a = b;
8Chúng ta cũng có thể khai báo nhiều biến trong một dòng
var c = 10;
var b = c;
var a = b;
9Điều đó có vẻ ngắn hơn, nhưng chúng tôi không khuyến nghị điều đó. Để dễ đọc hơn, vui lòng sử dụng một dòng cho mỗi biến
Biến thể nhiều dòng dài hơn một chút nhưng dễ đọc hơn
var a, b, c;
a = b = c = 10;
0Một số người cũng định nghĩa nhiều biến theo kiểu nhiều dòng này
var a, b, c;
a = b = c = 10;
1…Hoặc thậm chí theo kiểu “dấu phẩy trước”
var a, b, c;
a = b = c = 10;
2Về mặt kỹ thuật, tất cả các biến thể này đều làm điều tương tự. Vì vậy, đó là vấn đề sở thích và thẩm mỹ cá nhân
35 thay vì var c = 10;
var b = c;
var a = b;
33var c = 10;
var b = c;
var a = b;
Trong các tập lệnh cũ hơn, bạn cũng có thể tìm thấy một từ khóa khác.
var c = 10;
var b = c;
var a = b;
35 thay vì var c = 10;
var b = c;
var a = b;
33var a, b, c;
a = b = c = 10;
7Từ khóa
var c = 10;
var b = c;
var a = b;
35 gần giống với từ khóa var c = 10;
var b = c;
var a = b;
33. Nó cũng khai báo một biến, nhưng theo một cách hơi khác, "trường học cũ"Có những khác biệt tinh tế giữa
var c = 10;
var b = c;
var a = b;
33 và var c = 10;
var b = c;
var a = b;
35, nhưng chúng không quan trọng đối với chúng tôi. Chúng tôi sẽ trình bày chi tiết về chúng trong chương "Thanh" cũChúng ta có thể dễ dàng nắm bắt được khái niệm “biến” nếu tưởng tượng nó như một “chiếc hộp” chứa dữ liệu, trên đó có dán nhãn tên riêng.
Chẳng hạn, biến
var c = 10;
var b = c;
var a = b;
83 có thể được hình dung như một hộp có nhãn var c = 10;
var b = c;
var a = b;
84 với giá trị var c = 10;
var b = c;
var a = b;
85 trong đóChúng ta có thể đặt bất kỳ giá trị nào trong hộp
Chúng tôi cũng có thể thay đổi nó nhiều lần như chúng tôi muốn
let a = b = c = 10;
5Khi giá trị được thay đổi, dữ liệu cũ sẽ bị xóa khỏi biến
Chúng ta cũng có thể khai báo hai biến và sao chép dữ liệu từ biến này sang biến kia
var c = 10;
var b = c;
var a = b;
60Khai báo hai lần gây ra lỗi
Một biến chỉ nên được khai báo một lần
Một khai báo lặp đi lặp lại cùng một biến là một lỗi
var c = 10;
var b = c;
var a = b;
61Vì vậy, chúng ta nên khai báo một biến một lần và sau đó tham chiếu đến nó mà không cần
var c = 10;
var b = c;
var a = b;
33ngôn ngữ chức năng
Thật thú vị khi lưu ý rằng có tồn tại cái gọi là ngôn ngữ lập trình chức năng thuần túy, chẳng hạn như Haskell, cấm thay đổi giá trị biến
Trong những ngôn ngữ như vậy, một khi giá trị được lưu trữ "trong hộp", nó sẽ ở đó mãi mãi. Nếu chúng ta cần lưu trữ thứ gì khác, ngôn ngữ buộc chúng ta phải tạo một hộp mới [khai báo một biến mới]. Chúng ta không thể sử dụng lại cái cũ
Mặc dù thoạt nhìn có vẻ hơi kỳ quặc, nhưng những ngôn ngữ này hoàn toàn có khả năng phát triển nghiêm túc. Hơn thế nữa, có những lĩnh vực như tính toán song song, nơi giới hạn này mang lại những lợi ích nhất định
Có hai hạn chế về tên biến trong JavaScript
- Tên chỉ được chứa các chữ cái, chữ số hoặc ký hiệu
87 vàvar c = 10; var b = c; var a = b;
88var c = 10; var b = c; var a = b;
- Ký tự đầu tiên không được là chữ số
Ví dụ về tên hợp lệ
var c = 10;
var b = c;
var a = b;
62Khi tên chứa nhiều từ, thường dùng camelCase. Đó là. các từ nối tiếp nhau, mỗi từ ngoại trừ từ đầu tiên bắt đầu bằng chữ in hoa.
var c = 10;
var b = c;
var a = b;
89Điều thú vị – ký hiệu đô la ________ 190 và dấu gạch dưới ________ 191 cũng có thể được sử dụng trong tên. Chúng là các ký hiệu thông thường, giống như các chữ cái, không có ý nghĩa đặc biệt nào
Những tên này hợp lệ
var c = 10;
var b = c;
var a = b;
63Ví dụ về tên biến không chính xác
var c = 10;
var b = c;
var a = b;
64Trường hợp quan trọng
Các biến có tên
var c = 10;
var b = c;
var a = b;
92 và var c = 10;
var b = c;
var a = b;
93 là hai biến khác nhauCác chữ cái không phải tiếng Latinh được cho phép, nhưng không được khuyến nghị
Có thể sử dụng bất kỳ ngôn ngữ nào, kể cả chữ cái cyrillic, biểu tượng tiếng Trung, v.v., như thế này
var c = 10;
var b = c;
var a = b;
65Về mặt kỹ thuật, không có lỗi ở đây. Những tên như vậy được cho phép, nhưng có một quy ước quốc tế sử dụng tiếng Anh trong tên biến. Ngay cả khi chúng tôi đang viết một kịch bản nhỏ, nó có thể còn cả một cuộc đời dài phía trước. Mọi người từ các quốc gia khác có thể cần đọc nó một lúc nào đó
tên dành riêng
Có một , không thể được sử dụng làm tên biến vì chúng được sử dụng bởi chính ngôn ngữ đó
Ví dụ. ________ 133, ________ 195, ________ 196 và ________ 197 được bảo lưu
Đoạn mã dưới đây đưa ra một lỗi cú pháp
var c = 10;
var b = c;
var a = b;
66Bài tập không có
98var c = 10;
var b = c;
var a = b;
Thông thường, chúng ta cần định nghĩa một biến trước khi sử dụng nó. Nhưng vào thời xưa, về mặt kỹ thuật, có thể tạo một biến chỉ bằng cách gán giá trị mà không cần sử dụng
var c = 10;
var b = c;
var a = b;
33. Tính năng này hiện vẫn hoạt động nếu chúng tôi không đặt var c = 10;
var b = c;
var a = b;
98 vào tập lệnh của mình để duy trì khả năng tương thích với các tập lệnh cũvar c = 10;
var b = c;
var a = b;
67Đây là một cách làm không tốt và sẽ gây ra lỗi trong chế độ nghiêm ngặt
var c = 10;
var b = c;
var a = b;
68Để khai báo một biến cố định [không thay đổi], hãy sử dụng
var a, b, c;
a = b = c = 10;
01 thay vì var c = 10;
var b = c;
var a = b;
33var c = 10;
var b = c;
var a = b;
69Các biến được khai báo bằng cách sử dụng
var a, b, c;
a = b = c = 10;
01 được gọi là "hằng số". Họ không thể được chỉ định lại. Một nỗ lực để làm như vậy sẽ gây ra một lỗivar c = 10;
var b = c;
var a = b;
30Khi một lập trình viên chắc chắn rằng một biến sẽ không bao giờ thay đổi, họ có thể khai báo biến đó bằng
var a, b, c;
a = b = c = 10;
01 để đảm bảo và truyền đạt rõ ràng sự thật đó cho mọi ngườiCó một thực tế phổ biến là sử dụng các hằng số làm bí danh cho các giá trị khó nhớ được biết trước khi thực thi
Các hằng số như vậy được đặt tên bằng chữ in hoa và dấu gạch dưới
Chẳng hạn, hãy tạo các hằng số cho màu ở định dạng được gọi là “web” [thập lục phân]
var c = 10;
var b = c;
var a = b;
31Lợi ích
05 dễ nhớ hơn nhiều so vớivar a, b, c; a = b = c = 10;
06var a, b, c; a = b = c = 10;
- Dễ gõ nhầm
06 hơn nhiều so vớivar a, b, c; a = b = c = 10;
05var a, b, c; a = b = c = 10;
- Khi đọc mã,
05 có ý nghĩa hơn nhiều so vớivar a, b, c; a = b = c = 10;
10var a, b, c; a = b = c = 10;
Khi nào chúng ta nên viết hoa cho một hằng số và khi nào chúng ta nên đặt tên bình thường?
Là một “hằng số” chỉ có nghĩa là giá trị của một biến không bao giờ thay đổi. Nhưng có những hằng số được biết trước khi thực thi [như giá trị thập lục phân cho màu đỏ] và có những hằng số được tính trong thời gian chạy, trong quá trình thực thi, nhưng không thay đổi sau lần gán ban đầu của chúng
Ví dụ
var c = 10;
var b = c;
var a = b;
32Giá trị của
var a, b, c;
a = b = c = 10;
11 không được biết trước khi tải trang, vì vậy nó được đặt tên bình thường. Nhưng nó vẫn là một hằng số vì nó không thay đổi sau khi gánNói cách khác, các hằng số có tên viết hoa chỉ được sử dụng làm bí danh cho các giá trị “được mã hóa cứng”
Nói về biến số, còn một điều cực kỳ quan trọng nữa
Tên biến phải có ý nghĩa rõ ràng, rõ ràng, mô tả dữ liệu mà nó lưu trữ
Đặt tên biến là một trong những kỹ năng quan trọng và phức tạp nhất trong lập trình. Nhìn lướt qua các tên biến có thể tiết lộ mã nào được viết bởi người mới bắt đầu so với nhà phát triển có kinh nghiệm
Trong một dự án thực tế, phần lớn thời gian dành cho việc sửa đổi và mở rộng cơ sở mã hiện có hơn là viết một cái gì đó hoàn toàn tách biệt từ đầu. Khi chúng tôi quay lại một số mã sau khi làm việc khác trong một thời gian, việc tìm thông tin được dán nhãn rõ ràng sẽ dễ dàng hơn nhiều. Hay nói cách khác, khi các biến có tên hay
Hãy dành thời gian suy nghĩ về tên phù hợp cho một biến trước khi khai báo nó. Làm như vậy sẽ trả ơn bạn rất nhiều
Một số quy tắc tốt để làm theo là
- Sử dụng tên mà con người có thể đọc được như
12 hoặcvar a, b, c; a = b = c = 10;
13var a, b, c; a = b = c = 10;
- Tránh xa các chữ viết tắt hoặc tên ngắn như
14,var a, b, c; a = b = c = 10;
15,var a, b, c; a = b = c = 10;
16, trừ khi bạn thực sự biết mình đang làm gìvar a, b, c; a = b = c = 10;
- Đặt tên mang tính mô tả và súc tích tối đa. Ví dụ về tên xấu là
17 vàvar a, b, c; a = b = c = 10;
18. Những cái tên như vậy không nói lên điều gì. Bạn chỉ có thể sử dụng chúng nếu ngữ cảnh của mã làm cho nó đặc biệt rõ ràng về dữ liệu hoặc giá trị mà biến đang tham chiếuvar a, b, c; a = b = c = 10;
- Đồng ý về các điều khoản trong nhóm của bạn và trong suy nghĩ của riêng bạn. Nếu một người truy cập trang web được gọi là “người dùng” thì chúng ta nên đặt tên cho các biến liên quan là
19 hoặcvar a, b, c; a = b = c = 10;
20 thay vìvar a, b, c; a = b = c = 10;
21 hoặcvar a, b, c; a = b = c = 10;
22var a, b, c; a = b = c = 10;
Nghe có vẻ đơn giản? . Cứ liều thử đi
Tái sử dụng hoặc tạo?
Và lưu ý cuối cùng. Có một số lập trình viên lười biếng, thay vì khai báo các biến mới, họ có xu hướng sử dụng lại các biến hiện có
Kết quả là, các biến số của chúng giống như những chiếc hộp mà mọi người ném những thứ khác nhau vào mà không cần thay nhãn dán. Có gì bên trong hộp bây giờ?
Những lập trình viên như vậy tiết kiệm một chút khi khai báo biến nhưng mất gấp mười lần khi gỡ lỗi
Một biến phụ là tốt, không xấu
Các trình duyệt và công cụ khai thác JavaScript hiện đại tối ưu hóa mã đủ tốt, do đó, nó sẽ không tạo ra các vấn đề về hiệu suất. Sử dụng các biến khác nhau cho các giá trị khác nhau thậm chí có thể giúp công cụ tối ưu hóa mã của bạn