TypeScript学习笔记2
目录
1.3TypeScript表达式
变量的命名规则
变量声明
1.4运算符
三元运算符
1.5控制结构
1.6TypeScript模块化程序设计
TypeScript函数
变量的作用域
TypeScript模块
模块作用域
1.7TypeScript面向对象
TypeScript类定义
TypeScript类的实例化
1.3TypeScript表达式
变量的命名规则
TypeScript变量的命名规则遵循以下规则:
1. 变量名必须以字母、下划线(_)或者美元符号($)开头。不能以数字开头。
2. 变量名可以包含字母、数字、下划线(_)或者美元符号($)。
3. 变量名是区分大小写的,例如myVariable和myvariable是不同的变量名。
4. 变量名应该尽量使用驼峰命名法,即首字母小写,后续单词首字母大写,例如myVariableName。
5. 尽量避免使用保留字或者关键字作为变量名,例如var、let、if等。
6. 建议给变量名赋予有意义的名称,以便于他人理解代码的含义。
变量声明
在
TypeScript
中,变量的声明可以使用三种关键字:
var
,
let
和
const
。
var
关键字声明的变量是函数作用域或全局作用域的变量,使用
var
关键字声明变量的
语法格式为:
var 变量名[:类型] [=初始值];
使用let
关键字声明变量的
语法格式为:
let变量名[:类型] [=初始值];
使用const语法格式:
const 常量名[:类型] = 初始值;
(
在使用const声明常量的同时一定要进行初始化,否则会报错
)
-声明变量的类型,但没有初始值,变量值会设置为
undefined
。
-声明变量并设置初始值,但不设置类型,该变量会根据值的类型进行推 断。
-声明变量没有设置类型和初始值,类型可以是任意类型,默认初始值为 undefined。
-变量声明语法格式还可以省略类型部分,因为TypeScript具有类型推断功能,可以根据初始值的类型自动推断变量的类型。
1.4运算符
三元运算符
在
TypeScript
中,有一个三元运算符(也称为条件运算符)可以用于根 据条件选择不同的值。
三元运算符的语法是
:
condition ? value1 : value2
如果条件
(condition)
为真,则返回
value1
;否则返回
value2
。
三元
/
条件运算符只能用于返回一个值,不能用于控制流程或执行其他操作。
例:let variable
=
age
>=
18
?
"
成年人
"
:
"
未成年人
"
1.5控制结构
分支结构:if-else, switch-case
循环结构:for, while, do-while, for.......of
例:const
arr
= [
1
,
2
,
3
];
for
(
let
num
of
arr
) {
console
.
log
(
num
);
}
1.6TypeScript模块化程序设计
TypeScript函数
函数声明
函数声明使用关键字
function
后面跟上函数名、参数列表和返回值类型。
函数调用的时候,我们直接输入参数
function add
(
x
:
number
,
y
:
number
):
number
{
return
x
+
y
;
}
console
.
log
(
add
(
1
,
2
));
//
输出
: 3
函数表达式
函数表达式可以将函数赋值给变量,可以使用箭头函数(
Arrow Function)或普通函数来定义。
const add
=
function
(
x
:
number
,
y
:
number
):
number
{
return
x
+
y
;
}
箭头函数
箭头函数是一种更简洁的函数表达式写法,使用箭头
=>
来定义函数。
const add
= (
x
:
number
,
y
:
number
):
number
=> {
x
+
y
;
}
函数参数特性
function
greet
(
name
?:
string
)-
在函数调用的地方,我们可以选择不传入参数或者传入一个字符串。
function
multiply
(
a
:
number
,
b
:
number
=
1
) -
multiply
函数接受两个参数
a
和
b
,其中
b
的默认值为
1在函数调用的地方,我们可以只传入一个参数,这样b将使用默认值1进 行计算,或者传入两个参数进行乘法操作。
变量的作用域
在TypeScript中,变量的作用域决定了变量在何处可见和可访问。根据定义的位置以及是否使用关键字来声明变量的方式,TypeScript有以下几种类型的作用域:
-全局作用域
-函数作用域
-块级作用域
-模块作用域
TypeScript模块
在
TypeScript
中,模块是用来组织和管理代码的一种机制。
-模块可以包含变量、函数、类和接口,并且可以通过导出和导入来共享和使用这些模块中的成员。
模块作用域
在
TypeScript
中,每个文件都被视为一个模块。
文件内声明的变量默认具有模块作用域,只在该模块内可见。这种变量可以被其他模块引入后访问。
1.7TypeScript面向对象
TypeScript类定义
--TypeScript
中,类定义开始于
class
关键字,后面跟着类名。
--类中可以定义
属性、构造函数
和
方法
。
--属性定义由
属性名和类型
组成。属性可以在类的构造函数中初始化。
--构造函数指定在创建类的实例时要执行的代码,用于
初始化类的属性
。
--方法定义由方法名、参数列表、返回类型和方法体组成。方法体是方法的具体实现。
--在类的方法中可以使用
this关键字来引用类的属性
。
--TypeScript
还支持访问修饰符(如
public
、
private
和
protected
),可以用于限制对类的属性和方法的访问。
TypeScript类的实例化
class
MyClass
{
constructor
(
public
name
:
string
) {}
printName
() {
console
.
log
(
this
.
name
);
}
}
//
实例化
MyClass
对象
const
myObj
=
new
MyClass
(
"John"
);
myObj
.
printName
();
//
打印
"John"