-
什么是接口
查看全部 -
泛型用来指定只能放某一类型的元素,不能放其它类型的元素
查看全部 -
泛型的概念
查看全部 -
//类的实例化是通过new关键字来完成的
//访问控制符:public,private(私有,内部可以访问,外部访问不到),protected(受保护的,内部和子类可以访问,外部访问不到)
//构造函数只能被调用一次,new实例化的时候调用,只会被调用一次,外部无法访问
class Person {
constructor(public name:string){
console.log('haha')
}
eat(){
console.log('im eating')
}
}
var p1 = new Person("batman")
// p1.eat();
var p2 = new Person("superman")
// p2.eat()
//类的继承extends
class Employee extends Person {
code: String;
work() {
super.eat();
this.doWork();
}
private doWork(){
console.log('im working')
}
}
var e1 = new Employee("name")
e1.work()
//类的super关键子,用来调父类的构造函数
查看全部 -
for...in
查看全部 -
forEach只遍历数组元素,循环不能被打断;
for...in 数组属性和元素下标,所以遍历数据的时候可能会有坑;
// let arr = [1,2,3,4]
// arr.name = ''lili
for...of 遍历数组元素,循环可以被打断,可用于任何对象上(map, set string....)
查看全部 -
//针对数组的析构表达式
let array1 = [1,2,3,4];
let [number1,number2] = array1;
//let [,,number1,number2] = array1;
//let [number1,number2,...others] = array1;
console.log(number1);
console.log(number2);
function doSomething([number1,number2,...others]){
console,log(number1)
console.log(number2)
console.log(others)
}
doSomething(array1)
查看全部 -
//析构表达式大括号的变量要跟对象里面的名字相等,除非用冒号给昵称
function getStock(){
return {
code : 'IBM',
price : 100,
price66: {
price1:200,
price2:400
},
aaa: 'xixi'
}
}
var {code:codex,price,price66:{price2}} = getStock();
console.log(codex);
console.log(price)
console.log(price2)
查看全部 -
//destructuring析构表达式:通过表达式将对象或数组拆解成任意数量的变量
查看全部 -
generator函数:
控制函数的执行过程,手工暂停和恢复代码执行
查看全部 -
//Rest and Spread操作符:用来声明任意数量的方法参数
function func1(...args) {
args.forEach(function(arg){
console.log(arg)
})
}
func1(1,2,3,4)
func1(7,8,9,10)
function fun2(a,b,c){
console.log(a);
console.log(b);
console.log(c);
}
var args = [1,2]
func2(...args);
var args2 = [7,8,9,10,11]
func2(...args2)
查看全部 -
可选参数必须写在必选参数后边
查看全部 -
let myname :string = 'lilian'
function test(a:string,b:string,c:string= 'jojo'){
console.log(a)
console.log(b)
console.log(c)
}
test('xxx','yyy','zzz')
test('xxx','yyy')
查看全部 -
var myname:string = 'vivian'
//类型检查会提示
myname = ''
//ts自动类型推断机制,除非设置为any
var alias:any = 'xixi';
var age:number = 13;
var man:boolean = true;
//为函数的参数和返回值定义类型
function test(name:string) :string {
return ''
}
class Person {
name: string;
age: number;
}
var zhangsan: Person = new Person();
zhangsan.name = 'cician'
zhangsan.age = 18
查看全部 -
字符串模版
let myName = 'vivian'
let getAge = ()=> 18
console.log(`hello${myName}`)
console.log(`hello${getAge()}`)
function test(template,name,age) {
console.log(template);
console.log(name)
console.log(age)
}
test `hello my name is ${myName}, i'm ${getAge()}`
查看全部
举报