📜  什么是任何类型,何时在 TypeScript 中使用它?

📅  最后修改于: 2022-05-13 01:56:51.532000             🧑  作者: Mango

什么是任何类型,何时在 TypeScript 中使用它?

Any 是 TypeScript 中的一种数据类型。当我们处理第三方程序并期望任何变量但我们不知道变量的确切类型时,使用任何类型。使用任何数据类型,因为它有助于在编译期间选择加入和退出类型检查。

在本文中,我们将了解什么是任何类型以及何时在 TypeScript 中使用它。

句法:

let temp: any;

temp = "string";
temp = 2;
temp = true;

由于我们将任何数据类型键入到 temp 它需要所有类型的数据类型并且不会给出任何错误。它提供了极大的灵活性,如果我们将任何方法调用到分配有任何类型的未知类型,它也使编译器不会在编译时产生错误。

我们已经说服编译器它是任何类型并且有一些函数,但我们不知道它到底是什么。我们现在已经看到了任何数据类型,但是由于 TypeScript 是一种类型检查语言,所以我们提供了变量灵活性,但它会导致一些问题,例如安全问题,所以让我们讨论一下何时使用任何数据类型。

只有当我们不了解变量的数据类型并且我们想要来自源的动态内容时,才使用任何类型。让我们看看一些我们必须使用任何数据类型的情况。

示例1:假设我们想将第三方数据存储在一个数组中,但我们不知道数组的确切数据类型,所以我们在TypeScript中初始化any的数组,不会出错,我们可以处理所有类型的数据类型。

Typescript
var New_Array : any[]=[1,"data1"];
New_Array.push("data2");
New_Array.push(2)
New_Array.push("data3");
New_Array.push(3)
console.log(New_Array)


Javascript
function Sumyy(a) {
    var sum = 0;
 
    for (var i = 0; i < a.length; i++) {
 
        if (/[0-9]/.test(a[i]))
            sum += parseInt(a[i])
    }
    return sum;
}


Typescript
declare var Sumyy: any;
 
var ans = Sumyy("geeksfor47geeks93820geeky");
console.log("Sum of numbers : ", ans);


HTML


 

    
    
    
    Document

 

 
    
    
    

 


在 cmd 中使用以下命令运行此文件:

tsc any_type.ts
node any_type.js

输出:

[1, "data1", "data2", 2, "data3", 3]

示例 2:如果您使用的是用 JavaScript 编写的第三方函数,因此它会为您提供一些数据,但您不知道在这种情况下数据的类型,如果我们定义了其他类型但它返回其他类型类型我们的代码在这种情况下无法正常运行,我们给第三方函数一些灵活性并使用任何类型进行定义。

JavaScript 文件:

Javascript

function Sumyy(a) {
    var sum = 0;
 
    for (var i = 0; i < a.length; i++) {
 
        if (/[0-9]/.test(a[i]))
            sum += parseInt(a[i])
    }
    return sum;
}


假设我们有这个对我们不可见的 JavaScript函数并且我们不知道返回类型。在这种情况下,我们使用任何类型。

打字稿文件:

打字稿

declare var Sumyy: any;
 
var ans = Sumyy("geeksfor47geeks93820geeky");
console.log("Sum of numbers : ", ans);


HTML 文件:

HTML



 

    
    
    
    Document

 

 
    
    
    

 


输出:

控制台输出