2

如果要查看官方 API 中的 Java 类 Vector,则有一些便利,例如创建 Vector 对象而不指定其初始长度。

可以只向其中添加元素,而无需指定索引(如数组)。

也可以使用 .contains 来确定 Vector 集合是否包含该元素,而无需循环。

Javascript中有这样的类型吗?

4

3 回答 3

3

JavaScript 数组没有固定长度,本质上等同于 Vector。

  • 您可以在任何索引处添加元素。该.length属性跟踪最大的数字索引属性。
  • .indexOf方法是这样的.contains()。(不要在 Java 或 JavaScript 中大量使用它。例如,Ant 版本 6 在大型项目中存在可怕的性能问题,因为代码被编写为或多或少使用 Maps 等 ArrayList 实例。如果你有任何大小且需要经常查找的集合,请使用更好的数据结构。)
  • 要将元素添加到末尾,您可以执行以下任一操作:

    someArray.push( newValue );
    

    或者:

    someArray[someArray.length] = newValue;
    
于 2013-10-23T19:17:47.860 回答
1

您可以创建Array但不指定其大小:

var array = [];

您可以在没有索引的情况下推送它:

array.push(value);

您可以检查它是否包含特定值,如下所示:

array.indexOf(value); // returns -1 if it didn't find a match

如果您需要查找有关 JavaScript 中数组的更多信息(并且仅关于它们),请查看规范。

于 2013-10-23T19:21:12.227 回答
0

你所追求的基本上是一个简单的 JS 数组。您可以使用push()添加到数组中而不必担心索引。indexOf()像 contains() 一样运行。

看一下:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array

于 2013-10-23T19:21:44.047 回答