首页 > 其他分享 >4、类型断言

4、类型断言

时间:2023-12-04 20:03:09浏览次数:25  
标签:box square console 断言 类型 log

类型断言(Type Assertion)可以用来手动指定一个值的类型。

类型断言

const box = document.querySelector('.box')
// <类型>数据
console.log((<HTMLDivElement>box).innerHTML)

// 值 as 类型
console.log((box as HTMLDivElement).innerHTML)

在 tsx 语法(React 的 jsx 语法的 ts 版)中必须用后一种,及值 as 类型

用于创建对象

interface Shape {
    color: string;
    penWidth: number;
    sideLength: number;
}
let square = <Shape>{};
square.color = "blue";
square.sideLength = 10;
square.penWidth = 5.0;

非空断言 --- !

忽略有可能出现的 undefined 和 null 类型

<script lang="ts" setup>
import {  onMounted,ref } from 'vue'
const items = ref<HTMLInputElement[]>()
onMounted(() => {
    console.log(items.value![1]);
})
</script>
<template>
    <div>
       <div v-for="item in 10" :key="item" ref="items">
           {{ item }}
    </div>
    </div>
</template>

不加非空断言 !,或出现下面的提示:

标签:box,square,console,断言,类型,log
From: https://www.cnblogs.com/ewar-k/p/17875766.html

相关文章

  • 2、数据类型
    typescript中为了使编写的代码更规范,更有利于维护,增加了类型校验,在typescript中主要给我们提供了以下数据类型布尔类型(boolean)数字类型(number)字符串类型(string)数组类型(array)元组类型(tuple)任意类型(any)null和undefinedvoid类型never类型类型定义ts规定定......
  • 深入理解泛型(经典详解):<T> T 和 T的使用以及public <E> List<E> get()泛型方法详解、类型擦
     一、为什么要使用泛型?    泛型俗称“标签”,使用<E>表示。泛型就是在允许定义类,接口时通过一个标识表示某个属性的类型或者是某个方法的返回值或者是参数类型,参数类型在具体使用的时候确定,在使用之前对类型进行检查。     泛型意味着编写的代码可以被很多不同......
  • 可变与不可变数据类型
    可变与不可变数据类型1.可变类型对于可变类型(如列表、字典等),在函数中修改参数会影响原始对象。1.1字典dic={'name':'serein','sex':'male','age':18}print(id(dic))#1499123688064#修改字典中的值dic['age']=19print(dic)#{'n......
  • 【python基础之可变和不可变数据类型】---python之栈的介绍
    【二】栈【0】引入https://www.hello-algo.com/chapter_stack_and_queue/栈如同叠猫猫,而队列就像猫猫排队。两者分别代表着先入后出和先入先出的逻辑关系。【1】栈的介绍「栈stack」是一种遵循先入后出的逻辑的线性数据结构。我们可以将栈类比为桌面上的一摞盘......
  • 【python基础之可变和不可变数据类型】--- python之堆的介绍
    【一】堆堆--简介:一种基于树的数据结构堆是满足堆特性的完全二叉树,即树中每个节点的值大于或等于其子节点的值。有两种类型的堆:1.最大堆:在最大堆中,每个节点的值都大于或等于其子节点的值,并且根节点在树中具有最大值。2.最小堆:在最小堆中,每个节点的值都小于或等于其子......
  • 【python基础之可变和不可变数据类型】--- python堆栈的相关应用
    【一】用代码实现堆和栈【1】堆#堆的操作是先进先出(FIFO)list_queue=[]foriinrange(0,5):print(f'{i}已入堆(队列)')list_queue.append(i)print('------入堆完毕--------')whilelist_queue:print(f'{list_queue.pop(0)}已出堆(队列)')print('-......
  • Java基本数据类型、包装类及拆装箱详解
    Java的基本数据类型和对应的包装类是Java语言中处理数据的两个关键概念。基本数据类型提供了简单而高效的方式来存储数据,而包装类使得基本数据类型具有对象的特性。本文将深入探讨基本数据类型与包装类的应用场景及详细描述,并对自动拆箱和装箱的源码实现进行分析。基本数据类型与......
  • Python中级-01-数据类型的内置方法
    本篇内容来源于:【1.0】Python中级之数据类型的内置方法-Chimengmeng-博客园(cnblogs.com)写的verygood,非常详细【一】数字类型【1】整数类型(int)(1)基本运算实现整数的加法运算。#int.__add__(other)num1=5num2=2result=num1.__add__(num2)print(......
  • 自动类型推导
    文章参考:爱编程的大丙(subingwen.cn)1.auto在C++11之前,auto和static相对应用于表示变量是自动存储的,但是非static局部变量默认都是自动存储的,auto因此显得额外鸡肋。C++11中对auto进行了扩展,使他能够自动推导变量的实际类型。1.1推导规则C++中auto并不是一种数据类型,而是......
  • sql-2.4+2.5数据库表的类型---engine
    CREATETABLE`student`(`id`intNOTNULLAUTO_INCREMENTCOMMENT'学号',`pwd`varchar(32)NOTNULLDEFAULT'123456'COMMENT'密码',`name`varchar(32)NOTNULLCOMMENT'名字',`address`varchar(60)NOTNULLCOMMENT......