TS入門

一.字符串:數組

一、多行字符串,使用雙撇號進行換行
`hello hello`
二、字符串模板(引用變量)。
var a = 5
console.log(`${a}`);
三、自動拆分字符串(字符串模板調用方法test,自動將模板裏字符拆分爲第一個變量template,整個模板的表達式會被拆分紅一個數組,並將該數組當成實參傳入方法所用來接收的形參。
function test(template,name,age){
console.log(template);
console.log(name);
console.log(age);

}
var name = 'chen';
var getAge=function(){
return 18;
}
test`hello my name is ${name},i am ${getAge()}`,

 

 

 二 ts參數 (可參考這個篇,較詳細->https://blog.csdn.net/qq_15701939/article/details/83934608)函數

var name:string = "chen";
var age:number = 20;
var man:boolean = true;
var title:any = "hello";
//自定義參數
class person{
  name:string;
  age:number;
}
person.name = "chen";
person.age = 21;

function test(name:
string){} void js沒有空值的概念,在ts中,可用void表示沒有任何返回值的函數 function test(name:string):void{ } 用void聲明變量的時候,只能賦值爲undefined和null
let name:void = undefined;
function test(name:string):string{ return "" }

默認值
function test(name:string = "chen"):string{ console.log(name) }
test();
可選參數
function test(name?:string):string{
 console.log(name)
}
test();
 

 三 rest和spread 操做符this

rest 可接收任意數量的參數
function fun1(...ages){
  ages.forEach((arg){
    console.log(arg)
  }) }
var e = [1,2,3,4]
fun1(...e)
spread 傳遞固定數量的參數
function fun2(a,b,c){
  ages.forEach((arg){
    console.log(arg)
  }) }
var e = [1,2.3]
fun2(...e);
 

四 generator函數spa

function* dosomething(){
    console.log("start")
    yield;
    console.log("finish")    
}
var a = dosomething();
a.next();

 五 析構表達式.net

1.對象時取值

function test(){
return{ a:1, b:"hello" } } var {a,b} = test(); console.log(a); console.log(b);

從對象的對象裏取值
function test(){
return{
a:1,
b:{
 aa:"hello
  } } } var {a,b:{aa}} = test(); console.log(a); console.log(b);

2.數組裏取值
var arr1 = [1,2,3,4];
var [a,b]=arr1;
console.log(a);//1
console.log(b);//2

var [..a,b]=arr1;
console.log(a);//3
console.log(b);//4
var [a,b...c]=arr1;
console.log(a);//1
console.log(b);//2
console.log(c); //[3,4]
 
 
 

 六 箭頭表達式rest


var
a = (b,c) => b+c; var arr = [1,2,3,4]; console.log(arr.filter(value)=>value%2 == 0);

重要的:消除this指向
fuction a (name:string){
  this.name= name;
  setInterval((){
    console.log("my name is " + this.name);
},1000)
}
var c = a("chen") //my name is chen;


七 forEach, for in  for of code

var name =[1,2,3,4];
name.desc="four number";
name.forEach(value => console.log(value)) //不能被打斷,只能全遍歷
var name =[1,2,3,4];
name.desc="four number";
for(var a in name){
  console.log(a)  //打印的只是鍵,不是值
  console.log(name(a)),這樣才能打印值      
}
var name =[1,2,3,4];
name.desc="four number";
for(var a of name){  if(a > 3)break; //能夠用break打斷
  console.log(a)  //1,2,3
  
}
相關文章
相關標籤/搜索