JavaScript: ES6: Biến | V1Study

Học viện Đào tạo và Công nghệ V1Study
  • Đào tạo Độ tuổi từ 5 - 11 Độ tuổi từ 12 - 17 Từ 18 tuổi
  • Lập trình Python Lập trình C C++ Java C# - C Sharp Android Scratch Pascal Robot mBot
  • Web ReactJS HTML5 CSS3 JavaScript Node.js JSP ASP.NET Core jQuery PHP
  • FW-CMS Laravel AngularJS Flutter Magento Bootstrap VueJS CodeIgnitor WordPress Sass Drupal
  • Video Video Python Video Lập trình C Video C# Video Java Video HTML5-CSS3-JavaScript Video SQL Server Video PHP Video jQuery Video Android Video C++ Video Scratch
  • Video1 Video XML-JSON Video MySQL Video Excel Video Giải thuật và Lập trình Video Sức khỏe Video Drupal Video mBot Video Giáo dục - Khoa học
  • Other Unity Giải thuật và lập trình Giải thuật và lập trình - C CCNA Mạng máy tính Design Patterns English Facebook SEO Git Tin học đại cương Japanese App-Uti Download
  • Data SQL Server XML JSON MySQL
  • News
Học viện Đào tạo và Công nghệ V1Study ≡ JavaScript Hướng dẫn Giới thiệu Nhúng JavaScript vào file HTML write() và writeln() alert(), confirm(), prompt() Biến và Kiểu dữ liệu Biểu thức và phép toán Tối ưu hoá phân phối CSS Tối ưu hoá code JavaScript eval() Phương thức window.open() parseInt() parseFloat() Mảng (Array) focus() và blur() 20 cách thực hành tốt nhất để cải thiện hiệu suất JavaScript Giá trị nguyên thủy và giá trị tham chiếu trong Javascript JavaScript try…catch JavaScript Promises Phương thức call() Phương thức apply() Promise Chaining JavaScript Promise.all() Phương thức bind() JavaScript Promise.race() JavaScript Throw Exception Các loại sự kiện (Event) Giới thiệu về sự kiện Cài đặt và sử dụng sự kiện Sự kiện tương tự phương thức sự kiện Giá trị trả về cho sự kiện onChange onLoad và onUnLoad onFocus và onBlur onError onKeyPress, onKeyDown, onKeyUp onSubmit onClick Regular Expression Tạo biểu thức chính quy test() & exec() Thuộc tính của đối tượng RegExp match() search() replace() split() Biểu thức chính quy (Regular Expression) là gì? Metacharacter Siêu ký tự chấm Lớp ký tự Metasymbol Các đối tượng cơ bản Đối tượng Array Đối tượng Date Đối tượng Math Đối tượng String Đối tượng Number Đối tượng Boolean Đối tượng Function Ví dụ (Examples) Ví dụ về mảng (Array) Lịch để bàn (Calendar) ES6 Tổng quan ECMAScript 6 ES6: Cài đặt ES6: Cú pháp ES6: Biến Phép toán Điều kiện Vòng lặp ES6: Hàm (Function) Sự kiện Cookie Chuyển hướng alert, confirm, prompt Từ khóa void In trang web - print() Đối tượng - Object Đối tượng Number Boolean Mảng (Array) String Các phương thức mới của String Đối tượng Date HTML DOM Các hàm mũi tên ES6 trong JavaScript Iterators Class JavaScript Generators Tham khảo Progressive Web Apps: Service Worker và Web App Manifest Cách tạo nút copy vào clipboard Chống copy với các sự kiện JavaScript Lazyload (Tải chậm) ảnh Hàm callback trong JavaScript Tìm kiếm sử dụng AJAX HTMLCollection NodeList Kế thừa trong JavaScript bằng cách sử dụng super và extends IIFE - Hàm gọi ngay JavaScript Private Fields JavaScript Private Methods JavaScript Getters và Setters JavaScript Factory Functions JavaScript Reflection Videos Đối tượng di chuyển theo chuột Bài tập Bài tập cơ bản Bài tập phần điều kiện Bài tập phần vòng lặp Bài tập phần mảng Bài tập phần hàm Cách code trong JavaScript Cách sử dụng Console dành cho nhà phát triển JavaScript Cách thêm JavaScript vào HTML Cách viết chương trình JavaScript đầu tiên Tìm hiểu về cú pháp và cấu trúc lập trình trong JavaScript Cách viết comment (nhận xét) trong JavaScript Tìm hiểu về hàm hủy (destructuring), tham số rest và cú pháp spread trong JavaScript Tìm hiểu các đối tượng Map và Set trong JavaScript Các trường hợp không nên sử dụng hàm mũi tên JavaScript: ES6: Biến Khóa học qua video: Lập trình Python All Lập trình C# All SQL Server All Lập trình C All Java PHP HTML5-CSS3-JavaScript Đăng ký Hội viên Tất cả các video dành cho hội viên

Một biến, theo định nghĩa, là “một không gian tên trong bộ nhớ” dùng để lưu giá trị hay dữ liệu. Nói cách khác, nó hoạt động như một thùng chứa các giá trị trong một chương trình. Tên biến được gọi là định danh. Sau đây là các quy tắc đặt tên cho một định danh:

  • Định danh không thể là từ khóa.

  • Định danh có thể chứa bảng chữ cái và số.

  • Định danh không thể chứa dấu cách và ký tự đặc biệt, ngoại trừ dấu gạch dưới (_) và ký hiệu đô la ($).

  • Tên biến không thể bắt đầu bằng một số.

Kiểu cú pháp

Một biến phải được khai báo trước khi nó được sử dụng. Cú pháp ES5 đã sử dụng từ khóa var để đạt được điều tương tự. Cú pháp ES5 để khai báo một biến như sau:

//Khai báo biến sử dụng từ khóa var var tên_biến

ES6 giới thiệu cú pháp khai báo biến sau:

  • Sử dụng let.
  • Sử dụng const.

Khởi tạo biến đề cập đến quá trình lưu trữ một giá trị trong biến ban đầu. Một biến có thể được khởi tạo tại thời điểm khai báo hoặc sau khai báo.

Cú pháp kiểu ES5 truyền thống để khai báo và khởi tạo một biến như sau:

//Khai báo và khởi tạo biến var tên_biến = giá_trị

Ví dụ: Sử dụng biến trong ES5

var ten ="V1Study" console.log("Giá trị trong biến là: " + ten)

JavaScript và kiểu động

JavaScript là một ngôn ngữ không định kiểu giống như PHP. Điều này có nghĩa là một biến JavaScript có thể giữ một giá trị của bất kỳ loại dữ liệu nào. Không giống như nhiều ngôn ngữ khác, bạn không phải nói với JavaScript trong quá trình khai báo biến loại giá trị mà biến sẽ lưu. Loại giá trị của một biến có thể thay đổi trong quá trình thực thi chương trình và JavaScript sẽ tự động xử lý nó. Tính năng này được gọi là kiểu động.

Phạm vi của biến JavaScript

Phạm vi của một biến là khu vực của chương trình mà nó được xác định, được sử dụng. Theo truyền thống, JavaScript chỉ định nghĩa hai phạm vi - global và local.

  • Phạm vi global - Một biến có phạm vi global có thể được truy cập từ bên trong bất kỳ phần nào của code JavaScript.

  • Phạm vi local - Một biến có phạm vi local có thể được truy cập từ bên trong một hàm nơi nó được khai báo.

Ví dụ:

Ví dụ sau khai báo hai biến cùng có tên number - một biến ngoài hàm (phạm vi toàn cục) và biến còn lại trong hàm (phạm vi cục bộ).

var number = 'v' function checkValue() { var number = '1' console.log("Giá trị của biến number trong hàm checkValue() là: " + number) } console.log("Giá trị của biến number ngoài hàm checkValue() là: " + number) checkValue()

Biến khi được khai báo trong hàm sẽ chỉ hoạt động trong hàm đó và đây là biến cục bộ. Tuy nhiên, biến khi được truy cập bên ngoài hàm sẽ là biến toàn cục.

Đầu ra sau đây được hiển thị khi thực hiện thành công.

Giá trị của biến number trong hàm checkValue() là: v Giá trị của biến number ngoài hàm checkValue() là: 1

ES6 định nghĩa một phạm vi biến mới đó là phạm vi Khối (Block).

let và phạm vi khối

Phạm vi khối giới hạn quyền truy cập của một biến vào khối mà nó được khai báo. Từ khóa var chỉ định phạm vi chức năng vào biến. Không giống như từ khóa var, từ khóa let cho phép tập lệnh hạn chế quyền truy cập vào biến tại khối bao gần nhất.

"use strict" function checkValue() { var num = 1 console.log("Giá trị của num trong checkValue(): "+num) { console.log("Bắt đầu khối inner") let num = 2 console.log("Giá trị của num: "+num) } } checkValue()

Trên đây là đoạn script khai báo một biến num trong phạm vi cục bộ của một hàm và khai báo lại nó trong một khối bằng cách sử dụng từ khóa let. Giá trị của biến phạm vi cục bộ được in khi biến được truy cập bên ngoài khối inner, trong khi biến phạm vi khối được tham chiếu trong khối inner.

Lưu ý - Chế độ strict là một cách để chọn tham gia biến thể JavaScript bị hạn chế.

Output sau đây được hiển thị khi thực hiện thành công.

Giá trị của num trong checkValue(): 1 Bắt đầu khối inner Giá trị của num: 2

Ví dụ với let và var

var va = 1; var va = 2; console.log(va);

Đầu ra sau đây được hiển thị khi thực hiện thành công mã trên.

2

Còn đây là khai báo và sử dụng let:

let le = 1; let le = 2; console.log(le);

Đoạn code trên sẽ đưa ra lỗi: Identifier 'le' has already been declared. Bất kỳ biến nào được khai báo sử dụng từ khóa let đều được gán phạm vi khối.

const

Khai báo const tạo ra một tham chiếu chỉ đọc đến một giá trị. Điều đó không có nghĩa là giá trị mà nó giữ là bất biến, chỉ là định danh biến không thể được gán lại. Các hằng số có phạm vi khối, giống như các biến được định nghĩa bằng cách sử dụng câu lệnh let. Giá trị của hằng số không thể thay đổi thông qua việc gán lại và nó không thể được khai báo lại.

Các quy tắc sau đây đúng với một biến được khai báo bằng từ khóa const:

  • Các hằng số không thể được gán lại giá trị.

  • Một hằng số không thể được khai báo lại.

  • Một hằng số yêu cầu một bộ khởi tạo. Điều này có nghĩa là hằng số phải được khởi tạo trong quá trình khai báo.

  • Giá trị được gán cho một biến const là bất biến.

Ví dụ

const x = 1 x = 1 // sẽ gặp lỗi !!

Đoạn mã trên sẽ trả về một lỗi vì hằng không thể được gán lại một giá trị. Biến hằng là bất biến.

ES6 và hoisting biến

Phạm vi của một biến được khai báo với var là bối cảnh thực thi hiện tại của nó, có thể là hàm hoặc biến toàn cục. Hoisting biến cho phép sử dụng một biến trong chương trình JavaScript, ngay cả trước khi nó được khai báo.

Ví dụ sau giải thích rõ hơn về khái niệm này.

var test = function() { for(var i = 0; i<5; i++) { console.log(i); } console.log("i có thể được truy cập ngoài phạm vi khối, i = " + i); console.log('i được hoist vào phạm vi hàm'); } test();

Output:

0 1 2 3 4 i có thể được truy cập ngoài phạm vi khối, i = 5 i được hoist vào phạm vi hàm

JavaScript engine bên trong đại diện cho script như sau:

var test = function() { var i; // i được hoist vào phạm vi hàm for(var i = 0; i<5; i++) { console.log(i); } console.log("i có thể được truy cập ngoài phạm vi khối, i = " + i); console.log('i được hoist vào phạm vi hàm'); } test();

Lưu ý - Khái niệm hoisting áp dụng cho khai báo biến, không áp dụng cho khởi tạo biến. Nên luôn luôn khai báo các biến ở trước phạm vi của chúng (trước biến toàn cục và trước hàm) để có thể giải quyết phạm vi của biến.

» Tiếp: Phép toán « Trước: ES6: Cú pháp Khóa học qua video: Lập trình Python All Lập trình C# All SQL Server All Lập trình C All Java PHP HTML5-CSS3-JavaScript Đăng ký Hội viên Tất cả các video dành cho hội viên Khóa học qua video: Lập trình Python All Lập trình C# All SQL Server All Lập trình C All Java PHP HTML5-CSS3-JavaScript Đăng ký Hội viên Tất cả các video dành cho hội viên Copied !!! Copy linkCopied link!
Bạn muốn tìm kiếm điều gì?

Từ khóa » Truyền Biến Javascript