class
- 类定义
- 提升
- class如和产生的对象?
类定义
实际上,类是“特殊的函数”
,就像你能够定义的函数表达式和函数声明一样,类语法有两个组成部分:类表达式和类声明。
提升
函数声明和类声明之间的一个重要区别在于,函数声明会提升,类声明不会
。你首先需要声明你的类,然后再访问它,否则类似以下的代码将抛出ReferenceErro
class如和产生的对象?
用文字描述不如写代码解释清晰!
var global_num = 12 // 全局变量
class Numbers { num_val = 13; // 实例变量static sval = 10; // 静态变量storeNum():void { var local_num = 14; // 局部变量}
}
console.log("全局变量为: "+global_num)
console.log(Numbers.sval) // 静态变量
var obj = new Numbers();
console.log("实例变量: "+obj.num_val)
看了看ts对其处理过程,如下
var global_num = 12; // 全局变量
var Numbers = /** @class */ (function () {function Numbers() {this.num_val = 13; // 实例变量}Numbers.prototype.storeNum = function () {var local_num = 14; // 局部变量};Numbers.sval = 10; // 静态变量return Numbers;
}());
console.log("全局变量为: " + global_num);
console.log(Numbers.sval); // 静态变量
var obj = new Numbers();
console.log("实例变量: " + obj.num_val);
参考菜鸟教程TS