TypeScript入门与实践——第3章 TypeScript语言基础

变量

一个变量使用给定的符号名与内存中的某个存储地址相关联,并且可以容纳某个值。

命名规则

  • 允许包含字母、数字、下划线和美元符号‘$’。
  • 允许包含Unicode转义序列,如“\u0069\u{6F}”。
  • 不允许使用数字开头。
  • 区分大小写。
  • 不允许使用保留字作为标识符。
    保留字:
    TypeScript入门与实践——第3章 TypeScript语言基础_第1张图片

变量声明:

  • var声明
    在声明时可以为变量赋值;未初始化时默认变量类型为undefined。
    var x = 0;
    var y;  // undefined
    
  • let声明
    在声明时可以为变量赋值;未初始化时默认变量类型为undefined。
    	let x = 0;
    	let y;  // undefined
    
  • const声明
    用于声明一个常量,,在定义时必须设置一个初始值。const声明在初始化后不允许重新赋值。
    const x = 0;
    

注:var声明的变量不具有块级作用域,而通过let和const声明的变量具有块级作用域。

注释

单行注释 //
多行注释

/*
	...
*/

区域注释:定义代码折叠区域,当代码被折叠起来时,区域描述信息会显示出来

//#region 区域描述
let x =0;
//#endregion

在这里插入图片描述

数据类型

类型 例子 描述
number 1, -33, 2.5 任意数字
string ‘hi’, “hi”, hi 任意字符串
boolean true、false 布尔值true或false
字面量 其本身 限制变量的值就是该字面量的值
any * 任意类型
unknown * 类型安全的any
void 空值(undefined) 没有值(或undefined)
never 没有值 不能是任何值
object {name:‘孙悟空’} 任意的JS对象
array [1,2,3] 任意JS数组
tuple [4,5] 元素,TS新增类型,固定长度数组
enum enum{A, B} 枚举,TS中新增类型

字面量

字面量不是变量,是直接给出的固定值。

  • Null字面量:只有一个,记作null.
  • Boolean字面量:两个,记作true和false。
  • Number字面量:包含四类,分别是二进制整数字面量、八进制整数字面量、十进制数字面量和十六进制整数字面量
  • 字符串字面量:推荐使用单引号。
  • 模板字面量:帮助开发者解决一些长久以来的痛点,如动态字符串的拼接和创建多行字符串等。使用反引号“`"(键盘上数字1左侧的按键)。

对象

对象是一种复合数据类型,由属性和方法构成。

对象字面量
又叫作对象初始化器,是最常用的创建对象的方法。

  • 数据属性
    对象字面量的数据属性由属性名和属性值组成,语法如下:
    {
    	PropertyName: PropertyValue,
    }
    
  • 存储器属性
    一个存储器属性由一个或两个存储器方法组成,存储器方法分为get方法和set方法两种。
    get方法把属性访问绑定到一个函数调用上,用于获取一个属性值。
    set方法把对象属性赋值绑定到一个函数调用上,当尝试给属性赋值时,set方法就会被调用。
    {
        get PropertyName() {
            return PropertyValue;
        }
    
        
        set PropertyName(PropertyValue : typeOfPropertyValue) {
            this.PropertyName = v;
        }
        
    }
    

数组

数组表示一组有序元素的集合,使用数字作为元素索引值。

数组字面量
数组字面量是常用的创建数组的方法,使用一对中括号“[ ]”将数组元素包含在内,元素之间用逗号分隔:

const color = ['red', 'blue', 'green'];

函数

函数声明

function name(param0, param1, ...) {
    body
}

函数表达式
除了函数声明以外,还可以使用函数表达式来定义一个函数。

函数表达式与函数声明的区别:
  函数表达式中的函数名是可选的,而函数声明时函数名是必不可少的。当没有指定函数名时,该函数叫作匿名函数。

因为函数表达式属于表达式,而表达式能够产生一个值,因此函数表达式能够产生一个值,该值是一个函数。
函数表达式能够被应用到任何一个期待值的地方。

立即执行的函数表达式:
  指的是在定义时就立即被调用的函数表达式,其常见的定义方式有以下两种:

;(function ()
{
    // ...
}) ();


;(function () {
    // ...
}());

小括号叫分组运算符,在分组运算符内部是一个表达式,将函数置于分组运算符之内时,该函数即成了函数表达式。若删除函数运算符,那么函数定义就成了函数声明。
  在立即执行的函数表达式中,在起始位置和结尾位置分别添加了分号,这是为了防止使用代码压缩工具处理代码之后产生错误的语法。
  立即执行的函数表达式和函数声明一样,都能够创建出新的作用域,同时,其自身对外部作用域没有任何影响。

箭头函数
用来定义匿名的函数表达式。箭头函数一定是匿名函数。

(param0, param1, ...) => { body}

你可能感兴趣的:(TypeScript,读书笔记-技术类,typescript,javascript,前端)