基本类型
string
string 表示文本,不是字节数组。
let name: string = "world";
let greeting: string = `hello ${name}`;
规则:
- 使用
"..."声明普通字符串 - 支持插值字符串
`...${expr}...` - 支持比较运算
- 不支持算术运算
- 不支持下标访问
- 不支持直接
for in迭代
普通字符串支持这些转义:
\\\"\n\r\t\u{...}
rune
rune 表示单个字符,是独立基础类型,不等同于长度为 1 的 string。
let a: rune = 'a';
let c: rune = '你';
规则:
- 使用
'...'声明 - 转义展开后必须恰好对应一个字符
- 支持比较运算
- 不做隐式数值化
rune 支持这些转义:
\\\'\n\r\t\u{...}
int
int 是当前唯一公开整数类型。
let age: int = 25;
let count: int = -10;
规则:
- 当前整数类型只有
int - 支持
+ - * / % int / int -> int- 不与
float混合运算
float
float 是双精度浮点数。
let pi: float = 3.14;
let ratio: float = 0.5;
规则:
- 支持
+ - * / - 不支持
% - 不与
int混合运算 - 显式转换可使用
int(x)和float(x)
bool
bool 表示真或假。
let ok: bool = true;
let done: bool = false;
规则:
- 支持
==/!= - 不支持大小比较
- 可用于
if、&&、||、!
插值字符串
插值字符串整体类型是 string:
let name = "Alice";
let count = 3;
let msg = `hello ${name}, count=${count}`;
当前插值允许任意类型,但采用展示语义,不是序列化语义。