0617-AngularJs的常量、解构、函数及面向对象

AngularJs的常量、解构、函数及面向对象

一、变量的声明

var num:number = 234.56;
var str:string ="字符串";  //字符串
var arrayObj1  = new Array([100,200.98,300.12,400 ]);  //创建一个number数组并赋值
var arrayObj2  = new Array(["a","b","c","d"]);  //创建一个字符串数组并赋值
var arr3:number[]=[11,22,33.33,44];//定义指定数据类型的数组

//枚举
enum colors {red,green,yellow,blue};
enum colorsAll {red=1,green=3,yellow=5,blue};var color1= colors[2];
var col2:colorsAll = colorsAll.blue;  //通过属性值找 :下标
var student:any[]=["张三丰",18,"男","武当山1号809室"];
var student2 =["张无忌",16,"男","武当山1号301室"]; //不声明是何类型时,默认是any类型

function test():void{num++;console.log("num:"+ num);console.log("str:"+ str);console.log("arrayObj1:"+arrayObj1.toString());console.log("arrayObj2:"+arrayObj2.toString());console.log("arr3:"     +arr3.toString());console.log("color1:"     + color1);console.log("根据colorsAll[6]给出下标找值:"     + colorsAll[6]);console.log("根据colorsAll[6]给出值找下标:"     + col2);console.log("any类型student:"     + student[0]+"/"+ student[3]);console.log("无类型student2:"     + student2[0]+"/"+ student2[3]);}
test();

二、常量

const url = "www.igolden.com.cn"; //常量的声明

三、解构

//将数组或对象:解构
var arr2:number[]=[111,222,333];
var [one,two,dog] = arr2;function test():void {console.log("dog:" + dog); //dog=333 解构方法1
}
test();function test2([one,two,dog]=[111,222,333]):void {console.log("two:"+ two); //two=222 解构方法2,解构作为参数传递过去
}
test2();

四、ts中的函数

       以下函数,调用的方法、执行的结果:完全一样。

//1.命名函数
function testAdd(x:number,y:number):number{let n:number = x + y;return n;
}
console.log("testAdd:"+ testAdd(3,5));  //testAdd:8
//2.匿名函数
var testadd2 = function (x:number,y:number):number {let n:number = x + y;return n;
}1.传入的参数,可以带默认值
function testAdd(x:number=1,y:number=1):number{let n:number = x + y;return n;
}
console.log("testAdd:"+ testAdd(3,5));  //testAdd:8
console.log("testAdd:"+ testAdd());  //testAdd:2
2.参数个数可变
//数组传参,参数个数可变
function testMore(one:string,...arr:string[]):string{let str:string = one +":"+ arr.join("-");return str;
}
var str= testMore("张三","李四","王五");
console.log(str);  //张三:李四-王五
var str= testMore("张三","李四","王五","monica");  
console.log(str);//张三:李四-王五-monica

3.箭头函数lambads
 作用:用来突破作用域。下例中,this可指向父元素。
var pepObj={name:["jack","tom","mary","wood"],gName:function () {return ()=>{return{n:this.name[2] }}}
};
var myFun = pepObj.gName();
console.log("myFun:"+ myFun().n);

4.函数重载
函数名必须相同,参数可不同,返回值可不同。



五、类定义

class person{name:string;age:number;constructor(s:string,n:number){ //构造方法,初始化this.name = s;this.age  = n;}showInfo(){return this.name+"的age等于"+this.age;}
}var p = new person("Jack",28);
console.log(p.showInfo()); //Jack的age等于28



六、Var和let

(function() {var varTest = 'test var OK.';let letTest = 'test let OK.';{var varTest = 'varTest changed.';let letTest = 'letTest changed.';}console.log(varTest); //输出"varTest changed.",内部"{}"中声明的varTest变量覆盖外部的letTest声明console.log(letTest); //输出"test let OK.",内部"{}"中声明的letTest和外部的letTest不是同一个变量






本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部