2022/04/10 TypeScript_Day3
TypeScript变量声明
本质:
申请一块内存地址存储值
变量命名规则
变量的几种声明方式
声明时赋值
var message:string = "HelloWorld"
声明变量不赋值--->值会被设置为undefined
var message:string
声明变量并赋值不设置类型--->类型会被设置为Any
var message = "HelloWorld"
单纯声明变量--->类型会被设置为Any
,初始值设置为undefined
var message
类型断言(Type Assertion)
作用:
手动指定一个值的类型,允许变量从一种类型变更为另一种类型
这里的变量更改类型是指编译器认为该变量变成了另一种类型
示例代码:
var str = "1" var str1:number = <number><any>str console.log(str1)
注意:
- 当
S
类型是T
类型的子集,或者T
类型是S
类型的子集时,S
能被成功断言成T
- 这不是类型转换
类型推断
示例:
var num = 2
编译器自动类型推断为number
类型变量
变量作用域
举例:
` // global variable var global_num:number = 18
class Numbers{ // Instance variable num_valnumber = 15 // Static variable static svalnumber = 12
sort(num:Int32Array):Int32Array {
if(num.length < 0) {
return
}
// Local variable
var init:number = 0
var i:number
var j:number
for(i = init; i < num.length; i++) {
for(j = i+1; j < num.length; j++) {
if(num[i] > num[j]) {
var temp = num[i]
num[i] = num[j]
num[j] = temp
}
}
}
return num
}
} `
TypeScript运算符
和java
或者go
的运算符没什么两样,所以注意一些记忆模糊的即可
位运算符
- &:and --->位运算符,将两个十进制数转为二进制比较两个二进制数的每一位,只有两个数的二进制位都为1结果才为1否则为0(转为二进制数以后长度要等长)
- !:or --->位运算符,将两个十进制数转为二进制比较两个二进制数的每一位,两个数的二进制位有一个为1结果就为1(转为二进制数以后长度要等长)
- ~:取反 --->将一个十进制数转为二进制,然后对每一位取反,0变为1,1变为0
- ^:异或 --->将两个十进制数转为二进制,等长,对每一位执行逻辑异,按位或操作,操作的结果是如果某位不同则该位为1,否则为0
-
右移 --->符号左边的数转为二进制,右边的数决定移动多少位,如5<<1是0101各个位向左移1位,高位丢弃,低位补0
-
:右移 --->与左移一直,只是改变了移动方向
-
:无符号右移 --->与有符号右移类似,除了左边一律使用0补位
类型运算符
返回操作数的类型
示例代码:
var message:string = "HelloWorld" console.log(typeof message)
instanceof
为指定运算符 --->判断对象是否为指定的类型
条件语句
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。