TypeScript 之 Hello World!

目录

■TypeScript 与 JavaScript比较

■TypeScript 相比于JavaScript 的优点

■安装前提

■安装

npm命令安装 【npm install -g typescript】

安装完了(查看安装的版本【tsc -v】)

■Hello World 

代码(编写 TS 文件)

编译(运行 TypeScript 编译器【tsc xxx.ts】,生存js文件 )

编译后JS文件与,编译源TS文件的差异。

运行(通过 Node.js 运行这段代码【node  xxx.js】)

效果(控制台输出相应内容 :Hello,World)

■安装出错

Log位置

错误信息 【error network 'proxy' config is set properly】

■更多资料


■TypeScript 与 JavaScript比较

JavaScript 是轻量级的解释性脚本语言,可嵌入到 HTML 页面中,在浏览器端执行。而TypeScript 是JavaScript 的超集,即包含JavaScript 的所有元素,能运行JavaScript 的代码,并扩展了JavaScript 的语法。相比于JavaScript ,它还增加了静态类型、类、模块、接口和类型注解方面的功能,更易于大项目的开发。
 

■TypeScript 相比于JavaScript 的优点

1.便于开发人员做注释。
2.能帮助开发人员检测出错误并修改。
3.TypeScript工具使重构更变的容易、快捷。
4.TypeScript 引入了 JavaScript 中没有的“类”概念。
5.TypeScript 中引入了模块的概念,可以把声明、数据、函数和类封装在模块中。
6.类型安全功能能在编码期间检测错误,这为开发人员创建了一个更高效的编码和调试过程。

■安装前提

安装node.js环境

Node.js之Hello World_sun0322的博客-CSDN博客

■安装

npm命令安装 【npm install -g typescript】

使用node.js的npm命令安装 (下面命令要用管理员权限运行!!!)

npm install -g typescript

(安装过程中出错,重新指定镜像源后,再次尝试安装,安装成功!!!)  

npm config set registry http://registry.npm.taobao.org/

安装完了(查看安装的版本【tsc -v】)

tsc -V 

===

■Hello World 

代码(编写 TS 文件)

G:\MyTypeScript\helloworld.ts

function greeter (person) {
  return 'Hello, ' + person
}

let user = 'World'

console.log(greeter(user))

greet   英 [ɡriːt]  v. 问候,迎接,招呼;称呼;接受;呈现在...前

编译(运行 TypeScript 编译器【tsc xxx.ts】,生存js文件

tsc helloworld.ts

编译后JS文件与,编译源TS文件的差异。

(ts中,结尾的【;】可以写,也可以不写)

 

===

运行(通过 Node.js 运行这段代码【node  xxx.js】)

node helloworld.js

效果(控制台输出相应内容 :Hello,World)

G:\MyTypeScript>node helloworld.js
Hello, World

 ===

■安装出错

Log位置

C:\Users\YourUserName\AppData\Local\npm-cache\_logs\

错误信息 【error network 'proxy' config is set properly】


49 silly reify }
50 timing reify:retireShallow Completed in 14ms
51 timing reify:createSparse Completed in 12ms
52 timing reify:loadBundles Completed in 1ms
53 silly audit bulk request { typescript: [ '4.9.3' ] }
54 silly tarball no local data for typescript@https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz. Extracting by manifest.
55 http fetch POST 200 https://registry.npmjs.org/-/npm/v1/security/advisories/bulk 7321ms
56 timing auditReport:getReport Completed in 7324ms
57 silly audit report {}
58 timing auditReport:init Completed in 0ms
59 timing reify:audit Completed in 7326ms
60 verbose stack Error: Socket timeout
60 verbose stack     at TLSSocket.onTimeout (G:\Program Files\nodejs\node_modules\npm\node_modules\agentkeepalive\lib\agent.js:346:23)
60 verbose stack     at TLSSocket.emit (node:events:525:35)
60 verbose stack     at TLSSocket.Socket._onTimeout (node:net:550:8)
60 verbose stack     at listOnTimeout (node:internal/timers:559:17)
60 verbose stack     at processTimers (node:internal/timers:502:7)
61 verbose cwd G:\
62 verbose Windows_NT 10.0.19045
63 verbose node v16.18.0
64 verbose npm  v8.19.2
65 error code ERR_SOCKET_TIMEOUT
66 error network Socket timeout
67 error network This is a problem related to network connectivity.
67 error network In most cases you are behind a proxy or have bad network settings.
67 error network
67 error network If you are behind a proxy, please make sure that the
67 error network 'proxy' config is set properly.  See: 'npm help config'
68 verbose exit 1
69 timing npm Completed in 1463915ms
70 verbose unfinished npm timer command:install 1668871218592
71 verbose unfinished npm timer reify 1668871218601
72 verbose unfinished npm timer reify:unpack 1668871218934
73 verbose unfinished npm timer reifyNode:node_modules/typescript 1668871218935
74 verbose unfinished npm timer reify:rollback:createSparse 1668872681884
75 verbose code 1

尝试重新指定镜像源

npm install 报错 ERR! network ‘proxy‘ config is set properly. See: ‘npm help config‘_Tine自由的博客-CSDN博客

# 淘宝源(推荐)
$ npm config set registry http://registry.npm.taobao.org/
 
# 官方源
$ npm config set registry http://registry.npmjs.org/
$ npm config set registry https://registry.npmjs.org/
 
# cnpm 源
$ npm config set registry https://registry.cnpmjs.org/
# 如果使用 cnpm,注意是否安装了 cnpm,cnpm 走推荐走的也是淘宝源
$ npm install -g cnpm --registry=https://registry.npm.taobao.org/

■更多资料

Vue3+TypeScript?看这一篇就够了_淮城一只猫的博客-CSDN博客_vue3+typescript

===

Python: ``` print("Hello, World!") ``` Java: ``` public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } } ``` C++: ``` #include <iostream> using namespace std; int main() { cout << "Hello, World!"; return 0; } ``` C: ``` #include <stdio.h> int main() { printf("Hello, World!"); return 0; } ``` JavaScript: ``` console.log("Hello, World!"); ``` PHP: ``` <?php echo "Hello, World!"; ?> ``` Swift: ``` print("Hello, World!") ``` Ruby: ``` puts "Hello, World!" ``` Go: ``` package main import "fmt" func main() { fmt.Println("Hello, World!") } ``` Perl: ``` print "Hello, World!\n"; ``` R: ``` cat("Hello, World!") ``` Scala: ``` object HelloWorld { def main(args: Array[String]): Unit = { println("Hello, World!") } } ``` Kotlin: ``` fun main() { println("Hello, World!") } ``` Lua: ``` print("Hello, World!") ``` Objective-C: ``` #import <Foundation/Foundation.h> int main() { NSLog(@"Hello, World!"); return 0; } ``` C#: ``` using System; public class HelloWorld { public static void Main(string[] args) { Console.WriteLine("Hello, World!"); } } ``` VB.NET: ``` Module HelloWorld Sub Main() Console.WriteLine("Hello, World!") End Sub End Module ``` SQL: ``` SELECT 'Hello, World!' ``` BASH: ``` echo "Hello, World!" ``` PowerShell: ``` Write-Host "Hello, World!" ``` Batch: ``` @echo off echo Hello, World! ``` Haskell: ``` main = putStrLn "Hello, World!" ``` Rust: ``` fn main() { println!("Hello, World!"); } ``` Dart: ``` void main() { print('Hello, World!'); } ``` Elixir: ``` IO.puts "Hello, World!" ``` Scala: ``` object HelloWorld { def main(args: Array[String]): Unit = { println("Hello, World!") } } ``` Julia: ``` println("Hello, World!") ``` TypeScript: ``` console.log("Hello, World!"); ``` CoffeeScript: ``` console.log "Hello, World!" ``` Pascal: ``` program HelloWorld; begin writeln('Hello, World!'); end. ``` Fortran: ``` program hello print *, "Hello, World!" end program hello ``` Lisp: ``` (print "Hello, World!") ``` F#: ``` [<EntryPoint>] let main argv = printfn "Hello, World!" 0 // return an integer exit code ``` Ada: ``` with Ada.Text_IO; use Ada.Text_IO; procedure Hello is begin Put_Line ("Hello, World!"); end Hello; ``` Racket: ``` #lang racket (displayln "Hello, World!") ``` Clojure: ``` (println "Hello, World!") ``` OCaml: ``` print_endline "Hello, World!" ``` Smalltalk: ``` Transcript show: 'Hello, World!'. ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值