二 TypeScript 基础(初识和语法)

news2024/11/23 11:06:45

变量

什么是变量

变量是存储信息的容器,其中的值(内容)是可变的。

变量的声明

我们使用var关键字来声明变量,新的关键字let来声明带有(块级作用域)属性的变量。

var a 或者 let a 

使用 = 来赋值

var a = 1;
//如果只声明变量,井没有赋值的话,该变量的值为 undefined
var b i// undefined;

1条语句中可以声明多个变量

var a,b, c
var a =3.b,c=5

变量的命名规则

不允许使用语言的关键字和保留字作为变量名

var var=3;//错误

不能以数字开头

var 3 = 4;// 错误
var 3a =4;//错误

可以使用字母,数字,下划线(美元符号($)组合成变量名

var a3=4;//正确的
var a_3=4;//正确的
var a=3=4;//错误的

变量的命名规范

变量声明的名称要见名识意

var imgWidth=3;

命名法:下划线命名法,小驼峰命名法,大驼峰命名法,下划线命名法

var img_width=3;
var imgwidthandHeight =3 ;//可读性不高
var ing width_and_height = 4;//可读性高
小驼峰命名法 var imgWidthAndHeight = 3;//可读性高
大驼峰命名法 var IngWidthAndHeight = 3;//可读性高

ts语言的数据类型

1 number:数字
2 string:字符串
3 boolean:布尔值
4 Array:数组
5 Tuple:元组
6 enum:枚举
7 any:任意类型
8 undefined:未定义
9 null:空

number

int a=3;//c语言中声明整型
var b : number=4;//ts声明一个 number数据类型的b,并赋值为4;

string字符串

var str: string a = “你好!";
在ts中单引号和双引号,没有区别,都是表示字符串,但是必须相同,前面是单引号后面也必须是。

boolean

// true false 只有这两种类型
var a: boolean false;

enum枚举

enum PRICE{
            "apple"
            "orange"
            } 
console.log (PRICE.apple);

any

var a: number  = 1;
a = 'hello'; //报错

var b: any = 1;
b = 'hello';//正确,any数据类型的变量,可以再次赋值为任意类型的值

undefined

var a;//a的值就是undefined

null

//与undefined相似,都代表空,null代表引用类型为空
var a = null;

运算符和表达式

运算符

+ - * / %  < > &&  !...都是运算符
由变量(常量),运算符组成的式子都是表达式

算数运算符

运算符:+ - * / % < > && !
表达式:a + b ; a*b;a-b;a/b
功能:进行数学运算
表值:算术运算的结果
注意这个 + 号出现在两个字符串之中 那就代表字符串连接
var a = ‘a’;
var b = ‘b’;
var c = a+b; // ‘ab’

赋值运算符

运算符 =
表达式:a=5;
功能:是把等号右边的值赋值给等号左边的变量
表值:复制之后变量的值
注意:等号左侧必须是变量

自增自减运算符

运算符:++(自增);–(自减)
表达式:a++,++a,a–,–a;
功能:让变量进行自增或者自减1
表值:a++(++在后面,先取变量的值作为变量的值,然后让变量+1);//a
++a(++在前面,先让变量加1,然后再取变量的值);//a+1
var a=1;
var b = a++;//1
var d=++c://2

复合运算符

运算符:+= -+ *= /= %
表达式:a+=3;
功能:先进性算术运算,再进行赋值运算 (a+=3等价于a=a+3;)
表值:最后赋值之后变量的值
注意:两个符号之间不能出现空格a+ = 3;//错误

关系运算符

运算符:> >= < <= == !=
表达式:a > 3;a ==b
功能:进行大小关系比较
表值:关系成立,表达式的值为true,否则表达式的值是 false;
注意
1.不同数据类型的值不可以进行大小关系比较
2.当运算符的两边都是字符串的时候,会按照字符串的比较规则进行比较
var a =3;
a>4:// false;
a<4://true;

逻辑运算符

运算符:&& || !
表达式:3&&5; 3>4 ‖ 5>3; !8;
功能:进行逻辑运算
表值:

&& 两侧有一个为假即为假 
||   两侧有一个为真即为真
!非真即假,非假即真
注意:所有代码层面的运算符号,统统为英文符号逻辑运算符的短路现象

逻辑运算符的短路现象
var a = 3;
a>3&&a++;
console.log(a);//结果是3而不是4
8& 运算符的表达式,如果左侧的表达式为假,则右侧的表达式不再运算
|| 运算符的表达式,如果左侧的表达式为真,则右侧的表达式也不再运算

运算符的优先级

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/64835.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

初识TypeScript编译器(tsc)

须知少时凌云志&#xff0c; 曾许人间第一流。 哪晓岁月蹉跎过&#xff0c; 依旧名利俩无收。 文章目录1. 安装 TypeScript2. 熟悉tsc的编译选项3. 编译.ts文件4. TS报错后那JS呢4.1 通过noEmitOnError禁止在出错的情况下编译出JS目标文件5. 查看编译生成的JS文件5.1 通过targe…

数据库分库分表方案

一、数据库瓶颈 不管是IO瓶颈&#xff0c;还是CPU瓶颈&#xff0c;最终都会导致数据库的活跃连接数增加&#xff0c;进而逼近甚至达到数据库可承载活跃连接数的阈值。在业务Service来看就是&#xff0c;可用数据库连接少甚至无连接可用。接下来就可以想象了吧&#xff08;并发…

文华财经期货量化短线策略支撑压力指标公式,短线行情无未来函数多空均线红涨绿跌信号

很多人从行情历史走势图发现&#xff0c;金叉行情上涨&#xff0c;死叉行情下跌的规律&#xff0c;告诉大家那些完美冬形只是过去式而已&#xff0c;行情震荡时&#xff0c;指标失灵可以把你震荡到爆仓。我们也会经常发现不好的指标在很多情况下会相互矛盾&#xff0c;这个指标…

[程序人生] [世界杯] 程序员世界杯的熬夜调节套餐 - 茶叶篇

&#x1f341;简介 最近看世界杯熬夜,搞点小酒(百威/威士忌/各种洋酒) 配花生米,再搞点串 简直人生不要太爽, 但是&#xff01;&#xff01;&#xff01; 问题来了&#xff0c;几天下来 喉咙不适,肺部不适觉得痰多, 查了一下是酒辛辣食品太多了&#xff01;早上萎靡不振咖啡提神…

车载诊断新驱动——远程诊断

文章目录 前言一、远程诊断作用二、解决方案三、现状和趋势总结前言 今天是2022年12月5日&#xff0c;终于迎来了疫情尾声的消息。 分享一段喜欢的文字&#xff0c;避免自己成为高知识低文化的工科男&#xff1a; 与其热闹着引人注目&#xff0c;步步紧逼&#xff0c;不如趋向…

基于springboot的作业管理系统设计与实现

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下&#xff0c;你想解决的问…

软件测试基础篇(3)

测试用例:围绕着软件需求文档来进行设计测试用例 测试用例:本质上是一种集合&#xff0c;是为了实施测试而向被测试系统发出的一组集合&#xff0c;实施测试集合&#xff0c;这个集合的操作者设计者就是测试人员&#xff0c;这组集合的内容包括:测试环境&#xff0c;操作步骤&a…

【JavaScript】用echarts绘制饼图

&#x1f64b;‍ 哈喽大家好&#xff0c;本次是JavaScript专栏echarts板块第一期 ⭐本期内容&#xff1a;用echarts绘制饼图 &#x1f3c6;系列专栏&#xff1a;JavaScript &#x1f44d;一起学习&#xff0c;一起加油&#xff01; 文章目录前言效果图思路准备一个dom基于准备好…

网络安全对避免勒索软件侵害的5个原因

近几年来&#xff0c;勒索病毒已成为全球最热门的关键字之一&#xff0c;已造成了及其严重的经济损失。许多企业意识到这种情况&#xff0c;并试图集中精力保护自己免受这类威胁。在这里本人结合案例分享出5个原因&#xff0c;以让更多企业避免勒索软件的侵害。 原因1.勒索软…

【C++】模拟实现STL容器:list

目录 一、list的介绍 二、list的排序 三、迭代器 1、list的迭代器失效问题 2、迭代器的功能分类 3、list迭代器的模拟实现 3.1普通迭代器 3.2const迭代器 4、迭代器价值 5、迭代器operator->的重载 四、模拟实现时遇到的困惑及注意点 1、调用拷贝构造时&#xf…

Spring Cloud Gateway核心过滤器之请求限流详解

环境&#xff1a;SpringBoot2.4.13 Spring Cloud Gateway3.0.1 概述 RequestRateLimiter GatewayFilter工厂使用一个RateLimiter实现来确定当前请求是否允许继续。如果不是&#xff0c;返回HTTP 429 - Too Many Requests(默认情况下)的状态。 该过滤器接受一个可选的keyReso…

基于51单片机的贪吃蛇游戏设计

1绪 论 1.1本课题研究的背景及意义 随着当今社会的发展&#xff0c;人们的生活节奏变得越来越快&#xff0c;人们开始逐渐的融入全球化的世界。人们已经不再局限于一小块天地&#xff0c;加班&#xff0c;出差已经占据了现代人生活的绝大部分。这个时候&#xff0c;一款简单易携…

ChatGPT 体验和思考

一、体验 1、辅助写代码 2、检查代码&#xff08;遗憾的是&#xff0c;不一定是对的&#xff09; 3、分析代码 4、帮你了解/入门一项陌生的技术 小结&#xff1a; AI 会慢慢成为程序员的得力帮手&#xff0c;但目前来看&#xff0c;似乎还是不够成熟。 当然&#xff0c;大多…

《软件工程》2013年期末试卷

北京信息科技大学《软件工程》2013年期末试卷

青岛山水新城二期景观设计 全套设计

目录 1前言 2 1.1 青岛市地理位置与自然概况 2 1.2 山水新城小区概况 3 1.3设计的目的和意义 4 1.4小区园林景观设计现状和发展趋势 5 2本论 6 2.1设计依据 6 2.1.1 平面规划图 6 2.1.2 国家及地方有关规定及标准 6 2.2 设计指导思想 6 2.2.1 “以人为本”的设计理念 6 2.2.2 “…

PHP毕业设计毕设辅导课(1):PHP 基础语法

PHP 基础语法 PHP 脚本在服务器上执行&#xff0c;然后将纯 HTML 结果发送回浏览器。 PHP 基本的语法和输出 PHP 脚本可以放在文档中的任何位置。 <?php // PHP 代码 ?>PHP 脚本以 <?php 开始&#xff0c;以 ?> 结束&#xff0c;代码示例如下&#xff1a; …

[附源码]Python计算机毕业设计Django天狗电子商城系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

用Prophet在Python中进行时间序列预测

预测通常被认为是报告的发展。报告可以帮助我们回答&#xff0c;发生了什么事&#xff1f;预测有助于回答下一个逻辑问题&#xff0c;将会发生什么&#xff1f; 最近我们被客户要求撰写关于时间序列预测的研究报告&#xff0c;包括一些图形和统计输出。 Prophet的目的是“使专…

[附源码]Python计算机毕业设计Django酒店客房管理信息系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;我…

问题解决:记录一次Linux服务器根目录突然爆满

一、出问题了 过了个双休来到公司&#xff0c;同时发现Linux终端的服务器状态中根目录空间直接爆满100%&#xff0c;周五走之前根目录仅仅使用了59%&#xff0c;同时项目服务的后台不停的有日志打印&#xff0c;而且测试的小伙伴说系统登录不上去了。下面记录一下个人排查并解…