在 PHP 中,变量是动态类型的,这意味着您可以将任何类型的值分配给变量,而无需声明其类型。在 TypeScript 中,您需要显式声明类型。
PHP 示例:
$var = "Hello";
TypeScript 示例:
let var: string = "Hello";
PHP 变量文档
TypeScript 变量声明文档
PHP 使用关联数组,即使用命名键的数组。TypeScript 使用对象来实现类似的功能。
PHP 示例:
$array = ["key" => "value"];
TypeScript 示例:
let array: { [key: string]: string } = { key: "value" };
PHP 数组文档
TypeScript 对象类型文档
空合并运算符
PHP 有一个空合并运算符 (??
),如果第一个操作数存在且不为 null,则返回第一个操作数;否则,返回第二个操作数。TypeScript 也有类似的运算符。
PHP 示例:
$result = $value ?? "default";
TypeScript 示例:
let result = value ?? "default";
PHP 空合并运算符文档
TypeScript 空合并运算符文档
PHP 允许使用变量变量,其中变量的名称可以存储在另一个变量中。TypeScript 不直接支持这一点。
PHP 示例:
${"var" . $suffix} = "value";
TypeScript 示例:
let varName = "var" + suffix;
let [varName] = "value"; // 不可直接翻译
PHP 变量变量文档
PHP 有魔术方法,如 __get
,允许您定义访问不可访问属性的行为。TypeScript 没有直接的等效项。
PHP 示例:
public function __get($name) {
// ...
TypeScript 示例:
get(name: string): any {
// ...
PHP 魔术方法文档
PHP 和 TypeScript 都支持匿名函数,但语法略有不同。
PHP 示例:
$func = function($arg) { return $arg; };
TypeScript 示例:
const func = (arg: any): any => arg;
PHP 匿名函数文档
TypeScript 箭头函数文档
两种语言都支持用于异常处理的 try-catch 块,但语法略有不同。
PHP 示例:
try {
// ...
} catch (Exception $e) {
// ...
TypeScript 示例:
try {
// ...
} catch (e) {
// ...
PHP 异常文档
TypeScript 错误处理文档
PHP 允许对函数参数进行类型提示,而 TypeScript 使用更强大的类型系统。
PHP 示例:
function foo(int $num) {
// ...
TypeScript 示例:
function foo(num: number): void {
// ...
PHP 类型提示文档
TypeScript 函数类型文档
接口和特性
PHP 和 TypeScript 都支持接口,但 PHP 有特性,而 TypeScript 没有。
PHP 示例:
interface MyInterface {
// ...
TypeScript 示例:
interface MyInterface {
// ...
PHP 接口文档
TypeScript 接口文档
PHP 支持基于参数数量的函数重载,而 TypeScript 使用不同的方法。
PHP 示例:
function foo($a) {
// ...
TypeScript 示例:
function foo(a: string): void;
function foo(a: number): void;
PHP 函数重载文档
TypeScript 函数重载文档