第十七节TypeScript 对象

1、TypeScript对象是包含一组键值对的实例。值可以是标量、函数、数组、对象等,如下实例:

var object_name = { 
    key1: "value1", // 标量
    key2: "value",  
    key3: function() {
        // 函数
    }, 
    key4:["content1", "content2"] //集合
}

实例:

var sites = { 
   site1:"Runoob", 
   site2:"Google" 
}; 
// 访问对象的值
console.log(sites.site1) 
console.log(sites.site2)

执行结果:

Runoob

Google

2、类型模版

我们定义一个对象:

var sites = {
name1:“Android”;
name2:“Java”;
};

这时如果我们想在对象中添加方法,可以使用以下方法:

sites.sayHello = function(){return “hello”;};

如果在代码中使用上述方法则会出现编译错误,因为TypeScript中的对象必须是特定类型的实例。

正确实例:

var sites = {
    name1: "Android",
    name2: "Java",
    sayHello: function () { } // 类型模板
};
sites.sayHello = function () {
    console.log("hello " + sites.name1);
};
sites.sayHello();

执行结果:hello Android

对象也可以作为第一个参数传递给函数,如下:

TypeScript:

var sites = { 
    site1:"Runoob", 
    site2:"Google",
}; 
var invokesites = function(obj: { site1:string, site2 :string }) { 
    console.log("site1 :"+obj.site1) 
    console.log("site2 :"+obj.site2) 
} 
invokesites(sites)

JavaScript:

var sites = {
    site1: "Runoob",
    site2: "Google"
};
var invokesites = function (obj) {
    console.log("site1 :" + obj.site1);
    console.log("site2 :" + obj.site2);
};
invokesites(sites);

执行结果:

site1 :Runoob

site2 :Google

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python 数据分析 Matplotlib篇 plt.rcParams 字典(第5讲)

Python 数据分析 Matplotlib篇 plt.rcParams字典(第5讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ�…

elasticsearch-安装IK分词器

一、el默认分词器 es在创建倒排索引时需要对文档分词,在搜索时,需要对用户输入内容分词。但默认的分词规则对中文处理并不友好,在kibana的DevTools中测试 二、IK分词器 处理中文分词,一般会使用IK分词器。 GitHub官方网址&…

AIRLOOK数字技术赋能水利建设,让治水走向“智水”

山有百藏而不言,水润万物而不语。中国属于大河文明,农业历来在经济中占主导地位,其中水利灌溉是保证农业生产和提高农业产量的重要因素。如今,传统水利通过与数字孪生相结合,通过数据可视可控,做到水利“四…

对STM32 DMA突发传输的理解

每个数据流都独立拥有四级 32 位 FIFO(先进先出存储器缓冲区), 即FIFO大小为 4 * 4字节 16字节 节拍 MSIZE,当MSIZE为字节时,4个节拍的一次突发即一次性发送4个字节; 同理,当MSIZE为半字时,4个节拍的一次…

K8S 日志方案

目录 一、统一日志管理的整体方案 1、基础日志 2、Node级别的日志 3、集群级别的日志架构 二、安装统一日志管理组件 1、 部署Elasticsearch 2、部署Fluentd 3、部署Kibana 三、日志数据展示 一、统一日志管理的整体方案 通过应用和系统日志可以了解Kubernetes集群内…

【JVM】虚拟机的组成+字节码文件组成+类的生命周期

什么是JVM? JVM 本质上是一个运行在计算机上的程序,他的职责是运行Java字节码文件。 JVM的功能 1.解释和运行:对字节码文件中的指令实时的解释成机器码让计算机执行。 2.内存管理:自动为对象、方法等分配内存,自动…

强大的Adobe全家桶软件都是干什么用的,你知道吗?

Adobe Creative Suite是Adobe系统公司出品的一个图形设计、影像编辑与网络开发的软件产品套装。该套装的最高版本是Adobe Creative Cloud。 根据受众市场的不同分为Master Collection(大师版)、Production Premium(影音高级版)Design&Web Premium&a…

【办公技巧】ppt如何加密只能看不能修改?

大家是否想要给PPT文件设置加密,让ppt文件变为只能查看不能修改的状态?今天给大家分享给PPT文件设置带有密码的只读模式(修改权限)。 方法如下: PPT文件之后,将PPT文件进行另存为操作,但是在选…

【OAuth2】授权框架的四种授权方式详解

🎉🎉欢迎来到我的CSDN主页!🎉🎉 🏅我是Java方文山,一个在CSDN分享笔记的博主。📚📚 🌟推荐给大家我的专栏《OAuth 2》。🎯🎯 &#x1…

Java_Stream流

一、JDK8新特性(Stream流) 接下来学习一个全新的知识,叫做Stream流(也叫Stream API)。它是从JDK8以后才有的一个新特性,是专业用于对集合或者数组进行便捷操作的。有多方便呢?我们用一个案例体…

从物联网到 3D 打印:硬件相关的开源项目概览 | 开源专题 No.52

arendst/Tasmota Stars: 20.4k License: GPL-3.0 Tasmota 是一款为 ESP8266 和 ESP32 设备提供的替代固件,具有易于配置的 webUI、OTA 更新、定时器或规则驱动的自动化功能以及通过 MQTT、HTTP、串口或 KNX 进行完全本地控制。该项目主要特点包括: 支持…

赛宁综合安全验证评估,筑牢关基网络安全屏障

在国际复杂态势和数字经济发展的驱动下,关键信息基础设施(以下简称:关基)的安全运营逐步走向实战化、体系化和常态化。验证评估作为安全运营的试金石,已成为实现动态防御、主动防御的有力手段。如何通过体系化验证评估…

太牛叉了!国产 AI 智能体惊艳问世,全面致敬 FastGPT!

太震撼了!太厉害了!昆仑万维正式发布了「天工 SkyAgents」平台,助力大模型走入千家万户。你听听,这个名字一听就有一种巧夺天工的感觉,技艺那是相当的高超。 这个平台基于昆仑万维「天工大模型」打造,具备…

Flask+Mysql项目docker-compose部署(Pythondocker-compose详细步骤)

一、前言 环境: Linux、docker、docker-compose、python(Flask)、Mysql 简介: 简单使用Flask框架写的查询Mysql数据接口,使用docker部署,shell脚本启动 优势: 采用docker方式部署更加便于维护,更加简单快…

新媒体营销的相关理论

一、Web技术的发展演变阶段 二、传统媒体时代的AIDMA模型 1.吸引消费者注意(Attention) 它是指企业通过广告、促销等精心策划的营销活动来引起消费者对产品、服务或者品牌的注意、认识和了解,如淘宝和天猫节日期间的促销优惠活动。在这一阶…

线下终端门店调研包含哪些内容

品牌渠道一般分为线上和线下,线上的价格、促销信息、店铺优惠机制等都可以通过登录查看,但是线下门店的数据则需要进店巡查,否则无法得到真实的店铺销售数据,当然也有品牌是靠线下的业务团队报备机制获得这些信息,但是…

【飞凌 OK113i-C 全志T113-i开发板】视频编解码测试

前言 本文测试OK113i-S开发板-视频编解码的功能 OK113i-S开发板是支持视频的编解码的,下面是官方介绍的编解码功能 T113-i 是一种为多媒体解码平台设计的高级应用处理器。T113-i 集成了64位玄铁C906 RISC-V CPU, 双核 Cortex - A7 CPU 和 HiFi4 DSP&a…

再不开始写毕业论文,就要来不及了!

相信进来看这篇文章的你,还在为论文焦虑。 先来看1分钟的视频,对于要写论文的你来说,绝对有所值! 还在为写论文焦虑?免费AI写作大师来帮你三步搞定 第一步:输入关键信息 第二步:生成大纲 稍等片…

Mentor USB Controller系列之脚本生成RTL代码

进入到工具安装目录下:比如/digital/usb/sim/ 在此目录下运行脚本:./config.tcl即可出现如下界面,这个生成默认load的就是当前配置的 配置解析: 1. data width:安装utmi接口协议,usb2.0的传输位宽分别8bi…

数据结构:KMP算法

1.何为KMP算法 KMP算法是由Knuth、Morris和Pratt三位学者发明的,所以取了三位学者名字的首字母,叫作KMP算法。 2.KMP的用处 KMP主要用于字符串匹配的问题,主要思想是当出现字符串不匹配时,我们可以知道一部分之前已经匹配过的的文…