Các Khái niêm cơ bản trong Javascript

Giới Thiệu.

hiện nay javascript ngày càng trở nên phổ biến chỉ với javascript bạn có thể làm được rât nhiều các công việc khác nhau. như lập trình phía client, lập trình server side, mobile app,... Hôm nay mình sẽ chia sẻ một số khái niệm bên trong javascript mà mọi người nên biết khi bắt đầu học Javascript.

Khái Niệm.

khai báo biến.

javascript là dynamic language, khi khai báo biến không cần chỉ định kiểu dữ liệu trước cho biết đó

    var a = 'this is string';
    console.log(a); //this is string
    a = 10;
    console.log(a); //10

đoạn code trên được chạy với không có lỗi xảy ra.

các kiểu dữ liệu

Javascript có 6 kiểu primative data là number, string, boolean, undefine, null, symbol (kiểu dữ liệu được thêm vào từ ES6), và kiểu dữ liệu Object, ngoài 6 kiểu primative data ra thì tất cả các các dữ liệu trong javascript đều có kiểu dữ liệu là Object, như mảng, function, ...

định nghĩ object

có nhiều cách để định nghĩa một object

  1. object litteral: đây là cách định nghĩa object nhanh và đơn giản nhất trong javascript:
    var obj = {
        firstName: 'tung',
        age: 27
    }

chỉ với đoạn code trên ta đã khai báo thành công một obejct đơn giản phải ko nào

  1. function contructor:
    function Person(firstName,  age) {
        this.firstName = firstName;
        this.age = age;
    }
    var obj = new Person('tung', 27);

2 phương phát trên là 2 phương pháp phổ biết nhất để tao một object, và kết quả của 2 cách khai báo trên là giống nhau, vậy bạn có bao giờ tự hỏi tại sao lại có 2 cách khai báo trên. và thực sự toán tử new nó đã làm công việc gì? đây sẽ là một câu hỏi mở các bạn có thể comment dưới bài viết này nhé 😄.

kế thừa trong javascript và tại sao phải kế thừa.

để kế thừa trong javascript bạn sẽ sử dụng từ khóa proto chúng ta cùng xem ví dụ

     var obj = {
        firstName: 'tung',
        age: 27
    }
    obj.__proto__ .showFirstName = function() {
        console.log(this.firstName);
    }
   
   user.showFirstName(); // tung

Javascript sẽ thực hiện như nào trong đoạn code trên. khi gọi user.showFirstName() đầu tiên javascript engine sẽ tìm kiếm trong object đó và không tìm thấy, tiếp tục nó sẽ tìm xuống đến prototype của object đó và tìm thấy sau đó in ra kết quả, nếu ko tìm thấy thì nó lại tìm xuống đến prototype của thằng object đó cho đến object gốc. quá trình này gọi là scope chain. vậy tại sao không dùng luôn trực tiếp showFirstName vào trong object đi lại còn phải dùng kế thừa làm cái gì?. các bạn thử tìm hiểu xem nhé.

Javascript Single Thread

Javascript là single thread các lệnh trong javascript được thực hiện tuần tự từ trên xuống dưới. vì vậy ta có thể dễ code cũng như debug được quá trình execute code trong javascript, vậy nó là single thread vậy nó thực hiện và xử lý bất đồng bộ thế nào vậy?. khi thực hiện đến các lệnh asyn như ( timeout, call api, đọc ghi file,... ) thì javascript sẽ đưa cho Web API xử lý sau khi web api xử lý xong thì đưa xử lý vào call back queu và khi execution statck là empty thì 1 event loop sẽ đưa các call back function trong call back queu lên execution stack và thực hiện tuần tự,..

Kết Luận.

đây là những khái niêm cơ bản mà mình nghĩ các bạn lên năm được khi học về javascript. Còn rất nhiều các vấn đề khác trong javascript các bạn hãy và chia sẻ để cùng nhau học javascript nhé.

Cảm ơn các bạn đã đọc