Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在Typescript中的JSON API响应上将字符串强制转换为Typescript中的数字

在Typescript中的JSON API响应上将字符串强制转换为Typescript中的数字
EN

Stack Overflow用户
提问于 2019-08-27 14:20:44
回答 2查看 1.2K关注 0票数 2

我正在使用Axios进行API调用,它返回JSON。API以类型字符串的形式返回CUSIP,但是,我希望以类型编号的形式接收它。我创建了一个接口,它的typescript类型为number,但是当我获得变量时,它仍然被视为字符串。

API调用和一些逻辑:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const axios = require('axios');
import { General } from './json-objects-new';

module.exports = {
    makeApiCall : function(ticker:string) {

    axios.get(`${API_ENDPOINT}${ticker}?api_token=${API_KEY}`)
        .then(function (response) {
            // handle success    
            return response.data;

        })
        .catch(function (error) {
            // handle error
            console.log(error);
        })
        .then(data => {

            let gen : General = data.General;

            let num = gen.CUSIP + 1337

            console.log(num);

        });

    }
}

接口名为General,其中我将CUSIP转换为number:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
export interface General {
    ISIN: string;
    CUSIP: number;
}

问题:不是将CUSIP + 1337打印为2+ 1337 = 1339,而是打印21337。希望能帮上忙谢谢。我真的不想在构造函数中手动强制转换所有内容。

EN

回答 2

Stack Overflow用户

发布于 2019-08-27 14:26:08

尝试将CUSIP从字符串更改为数字:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const axios = require("axios");
import { General } from "./json-objects-new";

module.exports = {
  makeApiCall: function(ticker: string) {
    axios
      .get(`${API_ENDPOINT}${ticker}?api_token=${API_KEY}`)
      .then(function(response) {
        // handle success
        return response.data;
      })
      .catch(function(error) {
        // handle error
        console.log(error);
      })
      .then(data => {
        let gen: General = data.General;

        let num = Number(gen.CUSIP) + 1337; /* convert CUSIP string to number */

        console.log(num);
      });
  }
};
票数 0
EN

Stack Overflow用户

发布于 2019-08-27 14:26:55

您必须记住,Typescript只是Javascript之上的一层类型,它不会修改实际的javascript。

在您的示例中,即使CUSIP被键入为数字,您收到的实际数据也是一个字符串。您应该将从API获得的内容声明为字符串,然后使用parseInt(gen.CUSIP, 10)将其转换为数字。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57676760

复制
相关文章
TypeScript中的类型
基本类型布尔类型 (boolean)布尔类型表示一个值为真或假的逻辑值。let isDone: boolean = false;数字类型 (number)数字类型表示整数或浮点数。let count: number = 10;let price: number = 3.99;字符串类型 (string)字符串类型表示一串字符。let message: string = "Hello, TypeScript!";数组类型 (array)数组类型表示一个元素的集合。let numbers: number[] =
堕落飞鸟
2023/05/22
1.9K0
TypeScript中的类
在TypeScript中,类是一种用于创建对象的蓝图,它定义了对象的属性和方法。类可以看作是对象的模板,通过实例化类可以创建具体的对象。
堕落飞鸟
2023/05/22
7760
TypeScript中的怪语法
TypeScript中的怪语法 如何处理undefined 和 null undefined的含义是:一个变量没有初始化。 null的含义是:一个变量的值是空。 undefined 和 null 的最佳实践 核心思想: 避免null pointer错误。 null is bad。 要避免这个问题,我们需要做到: 用undefined,不要用null。 根据Code guidelines from Microsoft。 Enable "strict" 或者 "strictNullChecks" 编译选项
绿巨人
2018/07/04
1.8K0
TypeScript 函数中的 this 参数
从 TypeScript 2.0 开始,在函数和方法中我们可以声明 this 的类型,实际使用起来也很简单,比如:
阿宝哥
2020/03/20
7.8K0
typescript中的工厂函数
工厂函数是一种特殊的函数,用于创建和返回对象或其他数据结构。它通常用于封装和组织代码,允许动态地创建多个实例或对象,每个实例可能具有不同的属性或行为。
酒楼
2023/10/09
2300
typescript中如何直接引入json文件
这是一个单独的文件, 只是引入一个json文件, 使用typescript编写, 发现require关键字出错
cg错过
2020/11/23
8.9K0
typescript中如何直接引入json文件
TypeScript中的类型断言
本文是关于 TypeScript 中的 type assertions 的,它与其他语言中的类型强制转换有相似之处,并通过 as 运算符执行。
疯狂的技术宅
2020/06/19
3.8K0
TypeScript中的怪语法
TypeScript中的怪语法 如何处理undefined 和 null undefined的含义是:一个变量没有初始化。 null的含义是:一个变量的值是空。 undefined 和 null 的最佳实践 核心思想: 避免null pointer错误。 null is bad。 要避免这个问题,我们需要做到: 用undefined,不要用null。 根据Code guidelines from Microsoft。 Enable "strict" 或者 "strictNullChecks" 编译选项
绿巨人
2018/05/16
4.4K0
typescript 中的时间处理
在 typescript/ javasctipt 中, 时间 是一个 构造 函数, 需要通过 const dt = new Date(xxx) 进行初始化创建时间对象。
老麦
2022/12/24
3.4K0
typescript 中的时间处理
typescript 中的 const assertions
这个时候会, 提示 7053 错误, data.rootDomain 具有 any type, 不能被用作 key。
老麦
2022/12/24
1.1K0
typescript 中的 const assertions
python json转字符串_在python中将json转换为字符串
一开始我没有清楚地解释我的问题。在python中将json转换为字符串时,请尝试使用str()和json.dumps()。
全栈程序员站长
2022/11/16
10.4K0
Typescript的tsconfig.json
比如装饰器如果不配置会报这个错Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option in your 'tsconfig' or 'jsconfig' to remove this warning
小丑同学
2020/10/10
2.2K0
【TypeScript】在实战中的一些总结
ES6标准发布后,module成为标准,标准的使用是以export指令导出接口,以import引入模块。
DDGarfield
2022/06/23
1.3K0
TypeScript在项目开发中的应用实践体会
从2020年年底的时候,我开始使用Typescript进行项目的开发。期间团队也开始转向Typescript。
@超人
2021/07/29
2.9K0
TypeScript在项目开发中的应用实践体会
10-TypeScript中的接口
接口是一种规约的约定,从接口继承的类必须实现接口的约定。在高级开发中,通常接口是用于实现各种设计模式的基础,没有接口,设计模式无从谈起。 定义接口: interface ILog{ recordlog():boolean; } 类从接口继承: class Log4Net implements ILog{ public recordlog():boolean{ try{ console.log("log4net has been recored");
用户1910585
2018/05/04
1.1K0
08-TypeScript中的类
类的概念通常是在后端开发中实现的思想,比如C#、C++或Java,传统的JavaScript开发通过使用原型模式来模拟类的功能。在TypeScript中,天生就是支持类 的,可以让前端的开发更加具有面向对象思想开发的实现。 class Doctor{ public name:string;//默认不写就是public public getname():void { console.log("my name is:"+this.name); } } var doc1=
用户1910585
2018/05/04
1K0
实现TypeScript中的互斥类型
有这样一个对象,它有两个属性:name与title,在赋值的时候这两个属性只有一个能出现,例如:name出现的时候title就不能出现,title出现的时候name就不能出现。
神奇的程序员
2022/04/11
3.1K0
实现TypeScript中的互斥类型
TypeScript 中的 export 和 import
在 TypeScript 中, 经常要使用 export 和 import 两个关键字, 这两个关键字和 es6 中的语法是一致的, 因为 TypeScript = es6 + type !
beginor
2020/08/10
3.7K0
typescript中的class和interface
刚刚的vue3.0一发布,各大网址和社区以及公众号已经被Vue3.0的One Piece版本所霸屏,出现不同的标题有着同样内容的现象,借此热度我们不如好好回顾一下ts基础知识,备战vue3.0的正式使用。
小丑同学
2020/09/27
1.9K0
typescript中的class和interface
点击加载更多

相似问题

TypeScript :空白JSON响应

12

TypeScript强制转换json数组

11

如何在typescript接口中将json中的数字转换为字符串

117

在TypeScript中将数字转换为字符串

61.3K

将方法强制转换为Typescript中的函数

17
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文