📜  javascript 确定数组类型 - Javascript (1)

📅  最后修改于: 2023-12-03 15:01:45.626000             🧑  作者: Mango

Javascript 确定数组类型

Javascript是一种动态类型语言,也就是说变量的类型在运行时才能确定。因此,我们需要在代码中确定数组的类型以确保代码的正确性。

判断数组类型

以下是判断一个变量是否为数组的方法:

Array.isArray(variable)

使用该方法,我们可以得到一个布尔值表示该变量是否为数组。

示例代码:

const arr1 = [1, 2, 3];
console.log(Array.isArray(arr1)); // true

const arr2 = 'not an array';
console.log(Array.isArray(arr2)); // false
判断数组中元素类型

如果我们想要判断一个数组中所有元素类型是否一致,可以使用以下方法:

const allSameType = arr.every((value) => typeof value === typeof arr[0]);

使用该方法,我们可以遍历数组,判断每个元素的类型是否与第一个元素的类型一致,得到一个布尔值表示是否所有元素类型都一致。

示例代码:

const arr3 = [1, 2, 3];
const arr4 = [1, '2', 3];

const allSameType1 = arr3.every((value) => typeof value === typeof arr3[0]);
console.log(allSameType1); // true

const allSameType2 = arr4.every((value) => typeof value === typeof arr4[0]);
console.log(allSameType2); // false
判断数组中元素类型是否为特定类型

如果我们想要判断一个数组中所有元素类型是否都为某个特定类型,可以使用以下方法:

const allTypeSame = arr.every((value) => value instanceof Type);

使用该方法,我们可以遍历数组,判断每个元素是否为指定类型的实例,得到一个布尔值表示是否所有元素类型都为指定类型。

示例代码:

class Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }
}

const arr5 = [new Person('Alice', 20), new Person('Bob', 30)];
const arr6 = [new Person('Charlie', 40), { name: 'David', age: 50 }];

const allTypeSame1 = arr5.every((value) => value instanceof Person);
console.log(allTypeSame1); // true

const allTypeSame2 = arr6.every((value) => value instanceof Person);
console.log(allTypeSame2); // false

以上是判断数组类型的方法,希望能对你的开发工作有所帮助!