Deno is a tool to run JavaScript and TypeScript code outside the browser. It helps you build and run programs easily and safely.
When you want to run JavaScript or TypeScript programs on your computer without a browser.
When you need a simple and secure way to build server-side applications.
When you want to try modern features like built-in TypeScript support without extra setup.
When you want a tool that includes useful utilities like a code formatter and test runner.
When you want to avoid complex package managers and use modules directly from URLs.
Syntax
Deno
deno run [options] <script_file>
You run Deno programs using the deno run command followed by your script file.
Deno supports both JavaScript and TypeScript files directly.
Examples
Runs a TypeScript file named hello.ts.
Deno
deno run hello.ts
Runs server.ts with permission to access the network.
Deno
deno run --allow-net server.ts
Runs a JavaScript file with permission to read files from disk.
Deno
deno run --allow-read script.js
Sample Program
This simple program prints a greeting message to the console when run with Deno.
Deno
console.log("Hello from Deno!");
OutputSuccess
Important Notes
Deno is secure by default. It does not allow file, network, or environment access unless you give permission.
Deno uses modern JavaScript and TypeScript features without extra setup.
You can import modules directly from URLs, so no need for a package manager like npm.
Summary
Deno runs JavaScript and TypeScript outside the browser.
It is secure and easy to use with built-in tools.
You run programs with deno run and can control permissions.
Practice
(1/5)
1. What is Deno primarily used for?
easy
A. Running JavaScript and TypeScript outside the browser
B. Creating mobile apps
C. Designing websites with HTML and CSS
D. Managing databases
Solution
Step 1: Understand Deno's purpose
Deno is a runtime environment that allows running JavaScript and TypeScript code outside of web browsers.
Step 2: Compare options with Deno's use
Options A, B, and D describe other technologies or tasks unrelated to Deno's main function.
Final Answer:
Running JavaScript and TypeScript outside the browser -> Option A
Quick Check:
Deno runs JS/TS outside browser = C [OK]
Hint: Deno runs JS/TS outside browser, not for apps or design [OK]
Common Mistakes:
Confusing Deno with frontend frameworks
Thinking Deno manages databases
Assuming Deno is for mobile app development
2. Which command correctly runs a Deno script named app.ts?
easy
A. deno execute app.ts
B. deno start app.ts
C. node app.ts
D. deno run app.ts
Solution
Step 1: Recall Deno's run command
Deno uses the command deno run to execute scripts.
Step 2: Check other options
deno execute app.ts uses 'execute' which is invalid, deno start app.ts uses 'start' which is not a Deno command, node app.ts uses 'node' which is for Node.js.
Final Answer:
deno run app.ts -> Option D
Quick Check:
Run scripts with 'deno run' = D [OK]
Hint: Use 'deno run' to execute scripts, not 'execute' or 'start' [OK]
Common Mistakes:
Using 'node' instead of 'deno run'
Typing 'deno execute' instead of 'deno run'
Trying 'deno start' which is invalid
3. What will happen if you run deno run --allow-net app.ts?
medium
A. The script runs with permission to access the network
B. The script runs without any permissions
C. The script will fail due to missing permissions
D. The script runs with permission to access the file system
Solution
Step 1: Understand the permission flag
The flag --allow-net grants the script permission to access network resources.
Step 2: Analyze the command effect
Since the flag is present, the script can use network features. Other permissions like file system access are not granted.
Final Answer:
The script runs with permission to access the network -> Option A
Quick Check:
--allow-net grants network access = A [OK]
Hint: Flags like --allow-net control permissions; here network is allowed [OK]
Common Mistakes:
Assuming no permissions are given without --allow-all
Confusing network permission with file system permission
Thinking script fails without --allow-net
4. Identify the error in this command: deno run --allow-read app.ts when app.ts tries to access the network.
medium
A. No error, network access is allowed by default
B. Error because --allow-read does not allow network access
C. Error because --allow-read is an invalid flag
D. No error, script runs with all permissions
Solution
Step 1: Understand permission flags
The flag --allow-read only allows file system read access, not network access.
Step 2: Analyze script behavior
If app.ts tries to access the network without --allow-net, it will cause a permission error.
Final Answer:
Error because --allow-read does not allow network access -> Option B
Quick Check:
--allow-read ≠ network permission = B [OK]
Hint: Network needs --allow-net; --allow-read is only for files [OK]
Common Mistakes:
Assuming --allow-read grants network access
Thinking all permissions are granted by default
Using invalid flags
5. You want to run a Deno script server.ts that reads files and accesses the network securely. Which command should you use?
hard
A. deno run server.ts
B. deno run --allow-all server.ts
C. deno run --allow-net --allow-read server.ts
D. deno run --allow-write server.ts
Solution
Step 1: Identify required permissions
The script needs to read files and access the network, so it requires --allow-read and --allow-net.
Step 2: Evaluate options for security
deno run --allow-net --allow-read server.ts grants only needed permissions. deno run --allow-all server.ts grants all permissions, which is less secure. deno run server.ts grants none. deno run --allow-write server.ts grants write access, which is unnecessary.
Final Answer:
deno run --allow-net --allow-read server.ts -> Option C
Quick Check:
Grant only needed permissions for security = A [OK]
Hint: Grant only needed permissions, avoid --allow-all for safety [OK]
Common Mistakes:
Using --allow-all which is less secure
Forgetting to add --allow-net for network access
Adding unnecessary permissions like --allow-write
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.