Mẫu chung cho những tình huống này là có một nút ẩn trong trang mà bạn gọi bằng tài liệu. GetElementById[' + "MyButton. ID + "']. click[], sau đó bạn liên kết nút đó với một hành động của máy chủ thực hiện bất cứ điều gì bạn muốn.
Nếu biến của bạn cần nhận một số giá trị từ Javascript đó thì bạn tạo một đầu vào [cũng bị ẩn] và liên kết nó với biến
Trân trọng,
Có gì sai với sintax của tôi? . Nếu tôi nhấp vào nó, hành động sẽ chạy, nhưng nếu tôi thay đổi đầu vào, nó sẽ không chạy [nhưng đưa ra cảnh báo cho tôi]. Mã bên dưới
ES6 đã giới thiệu từ khóa const, được sử dụng để xác định một biến mới trong JavaScript. Nói chung, từ khóa var được sử dụng để khai báo một biến JavaScript. Const là một từ khóa khác để khai báo một biến khi bạn không muốn thay đổi giá trị của biến đó cho toàn bộ chương trình
Sự khác biệt chỉ là var dành cho khai báo biến thông thường có giá trị có thể thay đổi, trong khi giá trị biến được khai báo bằng từ khóa const không thể thay đổi
Khai báo/khởi tạo biến Const
Sau đây là cú pháp hoặc mã đơn giản để khai báo và khởi tạo biến const
sao chép mã
Kiểm tra nó ngay bây giờđầu ra
Nó sẽ hiển thị giá trị của biến const x mà không có bất kỳ lỗi nào
The value of const variable x = 16
Bây giờ, chúng ta sẽ thảo luận về một số thuộc tính của các biến được định nghĩa bằng const
Của cải
Sau đây là các thuộc tính của biến const
- Không thể gán lại biến xác định bằng từ khóa const hoặc không thể thay đổi giá trị của nó
- Biến const phải được khởi tạo ngay khi khai báo với tên biến là e. g. , hằng x=6;
- Bạn không thể cung cấp giá trị cho biến sau khi khai báo
- Giá trị của biến const không thể thay đổi
- Biến const có phạm vi khối. Điều này có nghĩa là một biến const trong cùng một chương trình có thể được gán lại theo cùng tên và có các giá trị khác nhau trong các khối khác nhau
- Một biến const không thể được nâng lên, điều đó có nghĩa là một biến được khai báo/khởi tạo bằng cách sử dụng từ khóa var không thể được gán lại bằng cách sử dụng const
- Trong JavaScript, const cho phép bạn chỉ sửa đổi giá trị của mảng, nhưng không thể thay đổi tham chiếu đến mảng
- Biến const chỉ tạo tham chiếu đến giá trị
- Thuộc tính của đối tượng có thể thay đổi nhưng tham chiếu đến đối tượng thì không thể thay đổi
ví dụ
Ở đây, chúng tôi có một số ví dụ để giải thích các thuộc tính khác nhau trong thực tế
ví dụ 1. Với sự trợ giúp của ví dụ này, bạn sẽ thấy rằng biến const không thể được gán lại
sao chép mã
Kiểm tra nó ngay bây giờđầu ra
Nó sẽ phát sinh lỗi kiểu vì không thể gán lại giá trị cho biến hằng
JavaScript error: Uncaught TypeError: Assignment to constant variable. on line 3
ví dụ 2. Trong ví dụ này, bạn sẽ biết rằng biến const chứa Phạm vi khối
sao chép mã
Kiểm tra nó ngay bây giờđầu ra
Sẽ không có lỗi khi thực thi đoạn mã trên. Nó sẽ chỉ in giá trị x của các khối khác nhau mà không có bất kỳ lỗi cú pháp hoặc kiểu nào
Block2: x = 23 Block3: x = 74 Block4: x = 49 Block1: x = 16
ví dụ 3. Ví dụ này sẽ mô tả rằng biến const không thể được nâng lên
sao chép mã
Kiểm tra nó ngay bây giờđầu ra
Nó sẽ tạo ra một lỗi cú pháp vì không được phép khai báo lại một biến
JavaScript error: Uncaught SyntaxError: Missing initializer in const declaration on line 4
Ví dụ 4. Ví dụ này sẽ cho bạn thấy rằng biến const không thể được khởi tạo sau khi khai báo
sao chép mã
đầu ra
Nó sẽ phát sinh lỗi cú pháp vì không cho phép khởi tạo sau khi khai báo biến const
JavaScript error: Uncaught SyntaxError: Missing initializer in const declaration on line 2
Ví dụ 5. Trong JavaScript, const cho phép bạn chỉ sửa đổi giá trị của mảng, nhưng không thể thay đổi tham chiếu đến mảng
sao chép mã
đầu ra
Tại đây, bạn có thể thấy tên Manya đã được thay thế bằng Krishna. Mặc dù mảng đã được khai báo bằng từ khóa const. Vì vậy, nó sẽ hiển thị tất cả các giá trị của mảng mà không có bất kỳ lỗi nào cả hai lần
Aparna, Manya, Amayra, Jahanvi Aparna, Krishna, Amayra, Jahanvi
Ví dụ 6. Trong ví dụ này, chúng tôi sẽ cho bạn thấy rằng giá trị biến const không thể thay đổi hoặc sửa đổi
sao chép mã
đầu ra
Ở đây, bạn có thể thấy rằng bạn không thể khởi tạo lại các giá trị đối tượng theo cùng tên, nhưng các giá trị đối tượng có thể được thay đổi bằng cách sử dụng tham chiếu của chúng
Khi tôi bắt đầu học Javascript, tôi thường bỏ qua một số nguyên tắc cơ bản cơ bản của Javascript và chuẩn bị tinh thần cho cái tiếp theo. Tôi luôn nghĩ mình biết đủ để lật ngược thế cờ nhưng luôn thất bại. Vì tôi đã xem qua các điểm sơn đó nên quyết định chia sẻ quan điểm của mình và một số điều cơ bản cho người mới bắt đầu sử dụng javascript khi họ bắt đầu, sau đó chọn từ đây và chuyển sang cấp độ tiếp theo
Trong bài đăng trên blog này, chúng ta sẽ tập trung vào phần cơ bản nhưng quan trọng nhất, vâng bạn đoán đúng rồi, chúng ta sẽ tìm hiểu những điều cơ bản về
Biến và hằng trong JavascriptJavascript là ngôn ngữ được gõ lỏng lẻo hoặc động. Điều đó có nghĩa là khi khai báo một biến, bạn không cần phải đề cập rõ ràng loại dữ liệu bạn sẽ lưu trữ. Javascript sử dụng truyền kiểu tự động hoặc chuyển đổi kiểu để làm như vậy. Nó đủ thông minh để tìm ra những gì bạn đã gán cho nó và khi bạn thực hiện các thay đổi, nó sẽ điều chỉnh theo. Trong hầu hết các ngôn ngữ nổi tiếng và cũ hơn như java, c ++, bạn phải chỉ định loại dữ liệu nào [Số, Chuỗi, Float, v.v.] mà một biến sẽ chứa
Biến giống như một thùng chứa để lưu trữ các giá trị như Chuỗi, Số, Boolean, v.v. và cấu trúc dữ liệu phức tạp [Mảng, Đối tượng] và thậm chí là toàn bộ hàm. Các biến được sử dụng để lưu trữ các giá trị hoặc kết quả của bất kỳ hoạt động nào mà chúng tôi muốn sử dụng sau này. Giá trị biến có thể được thay đổi sau này trong chương trình
Bây giờ hãy xem cách chúng ta định nghĩa một biến trong Javascript
Có 2 cách khai báo biến
- Sử dụng từ khóa Var
- Sử dụng từ khóa Let
var a;
var b;
Để khai báo một biến, hãy sử dụng từ khóa let hoặc var trước tên biến của bạn. Khi chúng ta khai báo một biến, nó sẽ được Javascript engine lưu vào bộ nhớ với giá trị mặc định là undefined [nếu lúc khai báo chúng ta không gán giá trị gì]
Bạn cũng có thể khai báo nhiều biến cùng lúc
var a,b;
2] Gán giá trị cho BiếnVì chúng tôi chỉ khai báo chúng, tại thời điểm này, chúng không chứa bất kỳ giá trị nào và nếu bạn điều khiển giá trị của chúng, nó sẽ trả về không xác định
Sau khi khai báo biến, bạn có thể gán giá trị cho nó bằng toán tử =
________số 8Bạn cũng có thể khai báo và gán giá trị cùng lúc
var a = 10;
Đối với nhiều biến,
JavaScript error: Uncaught TypeError: Assignment to constant variable. on line 30
Có nhiều loại dữ liệu khác nhau mà chúng ta có thể lưu trữ trong các biến
- Chuỗi ===> var name = “jenny”
- Số ===> var tuổi = 25
- Boolean ===> var isActive = true
- Mảng ===> var colors = [“xanh”,”đỏ”]
- Đối tượng ===> var người = { tên. “jenny”, tuổi. 25 }
- Chưa xác định
- Vô giá trị
JavaScript error: Uncaught TypeError: Assignment to constant variable. on line 31
Giá trị của một màu biến ở trên có thể được truy cập bằng cách gọi nó bằng tên của nó
JavaScript error: Uncaught TypeError: Assignment to constant variable. on line 32
Nếu bạn cố truy cập vào biến không tồn tại, bạn sẽ nhận được thông báo lỗi
JavaScript error: Uncaught TypeError: Assignment to constant variable. on line 33
Đặt tên biến trong Javascript
1] Không sử dụng các từ khóa dành riêng của Javascript [như class, var, v.v.]
2] Các biến có phân biệt chữ hoa chữ thường, biến isActive khác với isactive
3] Tên biến không được bắt đầu bằng số, dấu gạch dưới, ký hiệu
4] Tên biến có thể chứa cả chuỗi chữ hoa, chữ thường và số
5] Tên biến phải luôn bắt đầu bằng chữ thường
SỰ KHÁC BIỆT GIỮA VAR VÀ LET KEYWORD
TỪ KHÓA VAR
JavaScript error: Uncaught TypeError: Assignment to constant variable. on line 34
Khi Javascript được tạo, cách duy nhất để khai báo một biến là sử dụng từ khóa var. Các biến được khai báo với var được khởi tạo với undefined nếu chúng ta không gán cho nó bất kỳ giá trị nào
cẩu nâng
Biến Var có thể được truy cập trước khi khai báo. Javascript di chuyển tất cả các biến var lên đầu hàm hoặc ngữ cảnh toàn cầu. Điều này được gọi là var cẩu
biến var được nâng lên đầu
PHẠM VI THAY ĐỔI VAR
biến var có phạm vi chức năng, nghĩa là nếu được khai báo ở bất kỳ đâu bên trong hàm thì nó sẽ có sẵn trong phạm vi chức năng đó. Giống như Chúng tôi khai báo biến thưởng bên trong khối if của hàm getMarks, do đó bạn có thể truy cập nó ở bất kỳ đâu trong hàm getMarks. Nếu bạn điều khiển giá trị của phần thưởng bên ngoài khối if, nó sẽ xuất giá trị
Truy cập biến var bên ngoài khối
Nếu bạn khai báo bất kỳ biến var nào bên ngoài hàm, thì nó sẽ được thêm vào đối tượng chung và bạn có thể truy cập nó bằng đối tượng cửa sổ trong trường hợp trình duyệt như bên dưới
Truy cập biến var bằng cửa sổ Object
Trong các dấu ví dụ trên, biến trở thành biến toàn cục và có thể được truy cập trong suốt chương trình
KHAI BÁO LẠI BIẾN TẦN
các biến var có thể được khai báo lại trong cùng một phạm vi. Nó sẽ ghi đè lên biến hiện có. Tránh sử dụng var vì bạn có thể vô tình khai báo lại cùng một biến và điều đó sẽ khiến chương trình của bạn hoạt động khác đi vì nó sẽ không hiển thị bất kỳ lỗi nào nếu tên biến đã được sử dụng
Khai báo lại các biến var trong cùng phạm vi
Trong ví dụ trên, chúng ta khai báo lại biến Marks trong khối if và nó sẽ ghi đè biến Marks hiện có. Điều này là do các biến var có phạm vi chức năng và có sẵn trong toàn bộ chức năng như chúng ta đã thảo luận trước đó
ĐỂ TỪ KHÓA.
JavaScript error: Uncaught TypeError: Assignment to constant variable. on line 35
từ khóa let đã được giới thiệu trong ES2015[ES6]. để các biến không thể được truy cập trước khi khai báo i. e để biến không được cẩu lên. Nếu bạn cố gắng truy cập nó trước khi khai báo thì bạn sẽ gặp lỗi
var a,b;
0PHẠM VI BIẾN LET
Không giống như var, hãy khai báo các biến bị giới hạn phạm vi đối với khối, câu lệnh hoặc biểu thức mà nó được sử dụng trên đó. để các biến có phạm vi khối [tập hợp các dấu ngoặc nhọn {}] có nghĩa là nó chỉ khả dụng bên trong khối mà nó được xác định trong
Chúng tôi khai báo biến bonus bên trong khối if của hàm getMarks, do đó bạn chỉ có thể truy cập nó trong khối if. Nếu bạn điều khiển giá trị của phần thưởng bên ngoài khối if, nó sẽ đưa ra lỗi tham chiếu
Truy cập biến let bên ngoài khối
Không giống như var, các biến let không được thêm vào đối tượng toàn cục ngay cả khi bạn khai báo nó bên ngoài hàm. Nếu bạn cố truy cập nó bằng đối tượng cửa sổ, nó sẽ xuất ra kết quả không xác định
để các biến không được thêm vào đối tượng toàn cục
KHAI BÁO LET BIẾN
Các biến được khai báo bằng từ khóa let không thể được khai báo lại trong cùng phạm vi, nó sẽ báo lỗi
để các biến không thể được khai báo lại trong cùng một phạm vi
Biến đánh dấu bên trong khối if sẽ không đưa ra bất kỳ lỗi nào vì biến let tạo ra một phạm vi mới bên trong bất kỳ cặp dấu ngoặc nhọn nào. Biến đánh dấu bên ngoài khối if báo lỗi vì cùng phạm vi
XÁC ĐỊNH HẰNG SỐ SỬ DỤNG TỪ KHÓA CONST.
var a,b;
1Khai báo các biến đó là một hằng số mà bạn không muốn thay đổi trong toàn bộ chương trình. e bạn không thể cập nhật/thay đổi giá trị của biến const
Không thể cập nhật biến const
Biến hằng phải được khởi tạo giá trị nào đó nếu không nó sẽ báo lỗi cú pháp
var a,b;
2Nhưng, đây không phải là trường hợp của Đối tượng. Chúng ta có thể thay đổi các thuộc tính của một Đối tượng mặc dù chúng ta khai báo nó là hằng số
Thuộc tính của const Đối tượng có thể thay đổi
Nhưng bạn không thể thay đổi toàn bộ đối tượng được khai báo là hằng. Nếu bạn làm vậy, nó sẽ báo lỗi
Không thể cập nhật toàn bộ đối tượng không đổi
KHAI BÁO LẠI HẰNG SỐ
Các hằng số không thể thay đổi thông qua gán lại và không thể được khai báo lại trong cùng một phạm vi
Khai báo lại biến hằng Khai báo biến không có let và var
Nếu bạn khai báo bất kỳ biến nào mà không sử dụng từ khóa let hoặc var thì biến đó sẽ trở thành biến toàn cục và có thể được truy cập bên ngoài hàm và với đối tượng window. Vì vậy, hãy luôn xác định biến của bạn trước khi chỉ định nó hoặc sử dụng “sử dụng nghiêm ngặt”