Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有没有一种可能的方法来循环特定范围的数组,而不是循环整个过程?_Javascript_Arrays_For Loop_Arrayiterator - Fatal编程技术网

Javascript 有没有一种可能的方法来循环特定范围的数组,而不是循环整个过程?

Javascript 有没有一种可能的方法来循环特定范围的数组,而不是循环整个过程?,javascript,arrays,for-loop,arrayiterator,Javascript,Arrays,For Loop,Arrayiterator,我目前正在通过数组练习来练习数组迭代编程。我有一个字符串对象数组,看起来像这样 var balling = [ "Calvin Klein", "Tommy Hilfiger", "FUBU", "Rocca Wear", "Calvin Klein", "Tommy Hilfiger", "FUBU", "Rocca Wear" ]; 现在我知道,如果我像这样进入并循环所有这些问题,将会起作用 for (var i = 0; i < balling.length; i++) {

我目前正在通过数组练习来练习数组迭代编程。我有一个字符串对象数组,看起来像这样

var balling = [
  "Calvin Klein", "Tommy Hilfiger", "FUBU", "Rocca Wear",
  "Calvin Klein", "Tommy Hilfiger", "FUBU", "Rocca Wear"
];
现在我知道,如果我像这样进入并循环所有这些问题,将会起作用

for (var i = 0; i < balling.length; i++) {
  balling[i] = console.log(balling[i]);
};
for(变量i=0;i
然后整个过程从上到下一个一个打印出来

我更愿意做的是,我希望
for
指定数组中的特定对象范围,而不是打印出该数组中的所有8个对象

对于我的
for
循环,我必须做什么才能得到我想要的结果?有没有办法指定打印出阵列中的多少个对象?不仅仅是一个,而是两个,三个,以及一个开始阵列和设定范围的起始位置

您可以使用
Math.min(a,b)
函数,该函数从
a
b
中获取最小值,因此如果数组长度小于您希望获取的最小条目数,则不会出现问题:

var min_entries = 4;

for (var i = 0; i < Math.min(balling.length, min_entries); i++) {
  balling[i] = console.log(balling[i]);
};

您可以创建一个数组,其中包含反映索引范围的元素,这些元素应该在
for
循环中迭代。递增范围的第一个元素,直到达到范围的第二个元素

var balling=[“卡尔文·克莱恩”、“汤米·希尔菲格”、“富布”、“罗卡·威尔”
“,”卡尔文·克莱因“,”汤米·希尔菲格“,”富布“,”罗卡·威尔“];
var[from,to]=[2,5];

for(;from您可以更改并为开始和范围声明一个变量,该变量将定义将显示的数量,例如:

var start = 1;
var range = 4;

for (var i = start; i < start + range; i++) {
  balling[i] = console.log(balling[i]);
};
var start=1;
var范围=4;
对于(变量i=开始;i<开始+范围;i++){
balling[i]=console.log(balling[i]);
};

当您在for循环中声明'i'变量时,这基本上就是起点

例如,给定数组['a','b','c','d']和循环:

  for (var i = 1; i < array.length; i++ ) {
     console.log(array[i]);
  }
for(变量i=1;i

这将打印出“b”、“c”和“d”,因为“i”变量是1而不是0,所以它不会打印第一个元素。有意义吗?

如果你只想显示下半部分,你可以使用如下内容:for(var i=balling.length/2等)如果我想更进一步,并具体说明我想显示多少对象,该怎么办?我真的不明白你在问什么。如何确定要显示多少项?请检查编辑,但基本上正如您刚才所说,我想问的是如何确定循环中实际显示了多少项。array.length将显示数组中的项数。“i”变量的声明将决定数组的起始点,换句话说,假设您正在增加所显示的变量,那么将首先访问哪个元素。也请检查我的答案。
  for (var i = 1; i < array.length; i++ ) {
     console.log(array[i]);
  }