Mã JavaScript thực thi ở đâu?

Để theo dõi khóa học này, bạn cần biết cách thức và nơi bạn chạy mã JavaScript của mình. Bạn có một số tùy chọn để chạy chương trình chào thế giới đầu tiên của mình

Mở trình chỉnh sửa của bạn và tạo một tệp có tên index.js

file_type_js chỉ mục. js

console.log('hello world')

Cách chạy JavaScript từ dòng lệnh

Chạy một chương trình JS từ dòng lệnh được xử lý bởi NodeJS. Bắt đầu bằng cách cài đặt NodeJS trên máy cục bộ nếu cần

  1. Cài đặt nút. js

Bây giờ, chỉ cần mở dòng lệnh trong cùng thư mục với tập lệnh index.js mà bạn đã tạo (VS Code sẽ tự động thực hiện việc này với thiết bị đầu cuối tích hợp)

dòng lệnh

node .

// or 

node index.js

Cách chạy JavaScript từ trình duyệt

Khi mọi người nghĩ về “JavaScript”, họ thường nghĩ đến một trình duyệt web. Bạn có thể chạy mã trong trình duyệt bằng cách tạo tệp HTML tham chiếu tập lệnh. Trong trường hợp của chúng tôi, chúng tôi đã sử dụng tùy chọn defer, tùy chọn này sẽ thực thi JS sau khi tải xong tệp HTML

Chạy tập lệnh từ tệp HTML

file_type_html chỉ mục. html

<html>
    <head>
        <script defer src="./index.js">script>
    head>
html>

Bây giờ, chỉ cần mở tệp HTML này trên máy cục bộ của bạn và mở bảng điều khiển dành cho nhà phát triển (bước tiếp theo) để xem đầu ra

Kiểm tra bảng điều khiển trình duyệt

Trong Chrome, bạn có thể mở bảng điều khiển dành cho nhà phát triển bằng Ctrl+Shift+J (Windows) hoặc Ctrl+Option+J (Mac) hoặc theo cách thủ công từ menu cài đặt bằng cách chọn Công cụ khác -> Công cụ dành cho nhà phát triển. Bảng điều khiển cho phép bạn chạy mã trong trình duyệt, tương tự như cách

Mã JavaScript thực thi ở đâu?

Đầu ra của bảng điều khiển trình duyệt trong Chrome

Chạy JavaScript với Framework

Điều đáng nói là các framework như React, Angular, Svelte, v.v. sẽ tự động đảm nhiệm việc xây dựng và chạy ứng dụng của bạn, đồng thời cung cấp công cụ và các bước dành riêng cho framework để chạy mã. Trong thế giới thực, bạn có nhiều khả năng sử dụng các công cụ do khung cung cấp để chạy mã của mình hơn là các phương pháp cơ bản được trình bày trong khóa học này

Chạy JavaScript trong Sandbox

Khóa học này sử dụng StackBlitz để chạy các ví dụ về mã JS trong hộp cát riêng biệt trong trình duyệt. Đây là một lựa chọn tuyệt vời để chia sẻ các bản trình diễn nhanh và bản sao vấn đề 💡

Trong bài học này, chúng ta sẽ xem xét công cụ JavaScript và giải phẫu của nó. Chúng ta cũng sẽ tìm hiểu về ngăn xếp cuộc gọi, vòng lặp sự kiện, hàng đợi tác vụ và nhiều phần khác của JavaScript giúp JavaScript hoạt động bình thường như chúng ta biết

khi chúng tôi chạy đoạn mã trên, bối cảnh thực thi toàn cầu (GEC) được tạo. Nó được tạo ra trong hai giai đoạn

1)Giai đoạn sáng tạo hoặc Tạo ký ức

Trong giai đoạn này, javascript cấp phát bộ nhớ cho tất cả các biến và hàm có trong chương trình. Các biến được lưu trữ với giá trị không xác định và hàm được lưu trữ với tất cả mã có trong hàm cụ thể đó. Đối với đoạn mã trên, biến số được lưu trữ với giá trị không xác định và hàm add được lưu trữ với giá trị b/w the {. } dấu ngoặc nhọn. Kết quả1 cũng là một biến nên được lưu với giá trị không xác định

2)Giai đoạn thực thi mã

Trong giai đoạn này, quá trình thực thi chính diễn ra và javascript chạy qua từng dòng mã. Bây giờ giá trị số được thay đổi từ không xác định thành 10. Sau đó, nó chuyển sang dòng tiếp theo vì không có gì để thực hiện, nó chuyển sang dòng 5. Trong dòng 5, lệnh gọi hàm diễn ra. Khi một chức năng mới được gọi, một bối cảnh thực thi mới được tạo trong GEC

Bây giờ quá trình trên được lặp lại với hai giai đoạn nhưng chỉ với chức năng thêm. Sau khi chức năng được thực thi hoàn toàn, ngữ cảnh thực thi được tạo cho chức năng cụ thể đó sẽ tự động bị xóa

Chào mừng đến với Giới thiệu về JavaScript. Lớp học này là lớp giải quyết vấn đề dựa trên phòng thí nghiệm, thực hành, sẽ biến bạn thành một chuyên gia JavaScript

Trong khóa học này, bạn sẽ

  • Làm quen với ngôn ngữ JavaScript
  • Học cách sử dụng các thành ngữ và mẫu thực hành tốt nhất
  • Hiểu các khái niệm thường được sử dụng trong lập trình ngôn ngữ động, chẳng hạn như hướng nội, hàm bậc cao và bao đóng
  • Hiểu các tính năng JavaScript nâng cao như kế thừa nguyên mẫu
  • Làm quen với các công cụ và thư viện JavaScript phổ biến được sử dụng trong phát triển ứng dụng web

Bạn có đang học đúng lớp không? . Bạn nên thoải mái viết mã bằng ít nhất một ngôn ngữ lập trình khác. Lớp học này không dành cho những người lập trình lần đầu. một lớp thích hợp hơn sẽ là CS105 hoặc CS106A. Hiểu biết về HTML và CSS là hữu ích nhưng không cần thiết, vì chúng ta sẽ xem xét HTML và CSS sau. Nếu bạn đã có bất kỳ kinh nghiệm phát triển ứng dụng web nào trước đây, phần đầu tiên của khóa học có thể quá cơ bản đối với bạn, nhưng nếu bạn kiên trì, chúng tôi sẽ đề cập đến một số khái niệm ngôn ngữ JavaScript nâng cao, cũng như một số thư viện hữu ích

JavaScript là gì?

JavaScript là gì? . JavaScript bắt đầu tại Netscape, một trình duyệt web được phát triển vào những năm 1990. Một trang web có thể chứa JavaScript nhúng, sẽ thực thi khi người dùng truy cập trang. Ngôn ngữ được tạo ra để cho phép các nhà phát triển web nhúng mã thực thi vào trang web của họ để họ có thể làm cho trang web của mình tương tác hoặc thực hiện các tác vụ đơn giản. Ngày nay, kịch bản trình duyệt vẫn là trường hợp sử dụng chính của JavaScript

Cú pháp của JavaScript được lấy cảm hứng rất nhiều từ C++ và Java. Nếu bạn có kinh nghiệm về C++ hoặc Java, cú pháp của JavaScript sẽ có vẻ quen thuộc với bạn. Tuy nhiên, hoạt động bên trong của JavaScript gần với ngôn ngữ được diễn giải, được nhập động như Python hoặc Ruby

JavaScript là ngôn ngữ được giải thích, không phải là ngôn ngữ được biên dịch. Một chương trình như C++ hoặc Java cần được biên dịch trước khi chạy. Mã nguồn được chuyển qua một chương trình gọi là trình biên dịch, chương trình này sẽ dịch nó thành mã bytecode mà máy hiểu và có thể thực thi. Ngược lại, JavaScript không có bước biên dịch. Thay vào đó, trình thông dịch trong trình duyệt sẽ đọc mã JavaScript, diễn giải từng dòng và chạy nó. Các trình duyệt hiện đại hơn sử dụng một công nghệ được gọi là biên dịch Just-In-Time (JIT), biên dịch JavaScript thành mã byte thực thi ngay khi nó sắp chạy

JavaScript được đặt tên theo Java và nhiều ý tưởng được vay mượn từ ngôn ngữ Java. Ngoài ra, Java và JavaScript là hai ngôn ngữ hoàn toàn khác biệt. Sự khác biệt đáng kể nhất giữa chúng là Java là ngôn ngữ được biên dịch và JavaScript là ngôn ngữ được giải thích. JavaScript chạy trên nhiều trình duyệt vượt trội, trong khi các tiểu dụng Java yêu cầu một plug-in bổ sung. Cả hai ngôn ngữ đều có môi trường thời gian chạy khác nhau, cơ quan quản lý khác nhau, thư viện khác nhau

Bất chấp tất cả các lỗi của nó, JavaScript là một ngôn ngữ rất hữu ích. JavaScript chạy trong mọi trình duyệt web, vượt trội. Ứng dụng JavaScript chạy trên mọi thiết bị, trong khi ứng dụng dành cho máy tính để bàn hoặc thiết bị di động chỉ chạy trên ứng dụng được nhắm mục tiêu (Windows, Mac OSX, Linux, iPhone, Android). Điều này cho phép bạn viết các ứng dụng đa nền tảng một cách thực sự dễ dàng. Vai trò của JavaScript cũng được mở rộng đáng kể. Các nền tảng như Node. js cho phép các nhà phát triển chạy JavaScript phía máy chủ. Hiện có thể tạo toàn bộ ứng dụng web trong đó cả logic phía máy khách và phía máy chủ đều được viết bằng JavaScript

JavaScript có thể là một ngôn ngữ rất phức tạp và hầu hết các nhóm chỉ sử dụng một tập hợp con JavaScript. Nếu bạn đọc hướng dẫn về phong cách, nó sẽ khuyến nghị sử dụng các kỹ thuật, cấu trúc và thư viện JavaScript cụ thể. Vì JavaScript quá lộn xộn nên lớp học này sẽ đưa ra một số đề xuất về những gì chúng tôi cho là phong cách tốt. Tuy nhiên, chúng tôi sẽ đề cập đến một loạt các phong cách để bạn có thể nhảy vào một nhóm mới và chọn phong cách một cách nhanh chóng

Ví dụ về mã trực tiếp

Các ví dụ mã trực tiếp nằm rải rác trong văn bản này. Những đoạn mã này có thể được chỉnh sửa và chạy từ bên trong trình duyệt. Nhấp và nhập vào hộp để chỉnh sửa và nhấn nút “Chạy” để xem họ làm gì

Chào thế giới

Brian Kernighan và Dennis Ritchie đã dạy rằng điều đầu tiên bạn nên làm khi học một ngôn ngữ lập trình mới là học viết dòng chữ “Xin chào, Thế giới”. ” Đây là chương trình trong JavaScript

console.log("Hello world!");

Hàm (hoặc phương thức) console.log in đối số của nó ra bàn điều khiển, theo sau là một dòng mới. Chúng tôi sẽ sử dụng nó rất nhiều

chức năng hữu ích

Có hai chức năng hữu ích khác mà bạn có thể thấy thường xuyên. Hàm alert hiển thị một hộp văn bản với thông báo được chỉ định

Hàm prompt hiển thị một hộp nhắc người dùng nhập liệu

alert(prompt("What is your name?"));

Xem nguồn

JavaScript ở khắp mọi nơi trên web. Tất nhiên, các yếu tố tương tác trên trang này được triển khai bằng JavaScript

Có hai cách chính để đưa JavaScript vào trang web và cả hai đều liên quan đến . Lưu ý rằng trong trường hợp này, nội dung của thẻ script phải trống

Bạn có thể tự mình thử nó trên trang này. Xem nguồn của trang này và xem liệu bạn có thể tìm thấy mã JavaScript nội tuyến và được liên kết không

Bảng điều khiển JavaScript

JavaScript thường được chạy trên các trang web bên trong trình duyệt, nhưng nó cũng có thể được chạy phía máy chủ. Chúng ta sẽ đi qua một số nền tảng này sau. Hiện tại, chúng tôi sẽ chạy JavaScript trong bảng điều khiển, điều này sẽ cho phép chúng tôi xem kết quả mã của mình nhanh hơn

Điểm hay của các ngôn ngữ thông dịch là chúng được thiết kế để chạy với một lần duy nhất thông qua mã nguồn, chạy từng bước hướng dẫn. Điều đó có nghĩa là chúng ta có thể cung cấp cho trình thông dịch một bước duy nhất và yêu cầu nó chạy nó

Có một số bảng điều khiển JavaScript cho phép chúng tôi làm điều này. Hầu hết các trình duyệt đều có sẵn. Hãy nghĩ về nó như một giao diện dòng lệnh chạy JavaScript trên công cụ JavaScript của bạn

Chrome, Safari và OperaMở một tab mới. Nhấp chuột phải vào trang và nhấp Kiểm tra phần tử. Nhấp vào Bảng điều khiển. FirefoxMở menu Công cụ. Chuyển đến Nhà phát triển web> Bảng điều khiển web

Đằng sau bàn điều khiển là vòng lặp đọc-eval-in (REPL). Điều này đề cập đến vòng lặp mà bàn điều khiển chạy. đầu tiên nó đọc đầu vào của bạn, sau đó nó đánh giá nó là mã JavaScript, sau đó in kết quả. Đôi khi bạn sẽ nghe thuật ngữ REPL được sử dụng để chỉ bất kỳ loại shell lập trình nào cho phép bạn nhập mã và xem kết quả ngay lập tức. Chẳng hạn, Python và Ruby cũng cung cấp shell REPL tương tự

Hãy thử chạy một số biểu thức toán học đơn giản trong bảng điều khiển, chẳng hạn như 1 + 2 hoặc 3 * 4. JavaScript in câu trả lời đúng cho bạn. Xin chúc mừng, bây giờ bạn có thể sử dụng máy tính của mình như một máy tính rất đắt tiền

Bây giờ hãy thử chạy chương trình hello world trong bảng điều khiển. Nó tạo ra hai dòng đầu ra. Dòng đầu tiên là lời chào mà chúng tôi mong đợi. Dòng thứ hai ghi undefined. Điều này là do dòng đầu tiên là đầu ra mà chúng tôi đã hướng dẫn JavaScript in và dòng thứ hai là kết quả đánh giá chương trình của chúng tôi. Mọi biểu thức JavaScript đều có một kết quả, nhưng một số biểu thức, chẳng hạn như hàm console.log, trả về một kết quả trống có tên là undefined

Lưu ý rằng bảng điều khiển in ra kết quả của biểu thức, trong khi các ví dụ mã trực tiếp thì không. Chúng tôi sẽ sử dụng console.log để đánh giá các biểu thức trong các ví dụ mã trực tiếp, nhưng bạn có thể bỏ qua console.log

JavaScript có chạy trên trình duyệt hoặc máy chủ không?

JavaScript. JavaScript là tập lệnh phía máy khách, nghĩa là trình duyệt xử lý mã thay vì máy chủ web . Các tập lệnh phía máy khách thường được sử dụng khi chúng tôi muốn xác thực dữ liệu trước khi gửi nó đến máy chủ web, điều chỉnh giao diện theo phản hồi của người dùng và để triển khai các tính năng nâng cao khác.

Mã JavaScript được thực thi từ trên xuống dưới như thế nào?

JavaScript đồng bộ. JavaScript là đồng bộ, chặn và đơn luồng. Điều này có nghĩa là công cụ JavaScript thực thi chương trình của chúng ta theo trình tự, từng dòng một từ trên xuống dưới theo thứ tự chính xác của các câu lệnh .

Môi trường thực thi JavaScript là gì?

Trong JavaScript, môi trường cho phép mã JavaScript được thực thi là cái mà chúng tôi gọi là Bối cảnh thực thi JavaScript. Bối cảnh thực thi quyết định phần mã nào có quyền truy cập vào các hàm, biến và đối tượng được sử dụng trong mã.

JavaScript có thực thi trên máy chủ không?

Không. Máy chủ phục vụ một trang và trang đó tải tệp Javascript từ bất kỳ nơi nào tệp đó được lưu trữ, có thể là máy chủ của riêng bạn hoặc máy chủ của bên thứ ba. Sau khi được tải, tập lệnh này sẽ chạy trên trình duyệt của khách hàng chứ không phải trên máy chủ của bạn .