Tutorials References Menu

JS Reference

JS by Category JS by Alphabet

JavaScript

JS Array JS Boolean JS Classes JS Date JS Error JS Global JS JSON JS Math JS Number JS Operators JS RegExp JS Statements JS String

HTML DOM

DOM Attributes DOM Document DOM Element DOM Events DOM Event Objects DOM HTMLCollection DOM Location DOM Navigator DOM Screen DOM Style
alignContent alignItems alignSelf animation animationDelay animationDirection animationDuration animationFillMode animationIterationCount animationName animationTimingFunction animationPlayState background backgroundAttachment backgroundColor backgroundImage backgroundPosition backgroundRepeat backgroundClip backgroundOrigin backgroundSize backfaceVisibility border borderBottom borderBottomColor borderBottomLeftRadius borderBottomRightRadius borderBottomStyle borderBottomWidth borderCollapse borderColor borderImage borderImageOutset borderImageRepeat borderImageSlice borderImageSource borderImageWidth borderLeft borderLeftColor borderLeftStyle borderLeftWidth borderRadius borderRight borderRightColor borderRightStyle borderRightWidth borderSpacing borderStyle borderTop borderTopColor borderTopLeftRadius borderTopRightRadius borderTopStyle borderTopWidth borderWidth bottom boxShadow boxSizing captionSide caretColor clear clip color columnCount columnFill columnGap columnRule columnRuleColor columnRuleStyle columnRuleWidth columns columnSpan columnWidth counterIncrement counterReset cursor direction display emptyCells filter flex flexBasis flexDirection flexFlow flexGrow flexShrink flexWrap cssFloat font fontFamily fontSize fontStyle fontVariant fontWeight fontSizeAdjust height isolation justifyContent left letterSpacing lineHeight listStyle listStyleImage listStylePosition listStyleType margin marginBottom marginLeft marginRight marginTop maxHeight maxWidth minHeight minWidth objectFit objectPosition opacity order orphans outline outlineColor outlineOffset outlineStyle outlineWidth overflow overflowX overflowY padding paddingBottom paddingLeft paddingRight paddingTop pageBreakAfter pageBreakBefore pageBreakInside perspective perspectiveOrigin position quotes resize right scrollBehavior tableLayout tabSize textAlign textAlignLast textDecoration textDecorationColor textDecorationLine textDecorationStyle textIndent textOverflow textShadow textTransform top transform transformOrigin transformStyle transition transitionProperty transitionDuration transitionTimingFunction transitionDelay unicodeBidi userSelect verticalAlign visibility width wordBreak wordSpacing wordWrap widows zIndex
DOM Window

Web APIs

API Console API Geolocation API History API Storage

HTML Objects

<a> <abbr> <address> <area> <article> <aside> <audio> <b> <base> <bdo> <blockquote> <body> <br> <button> <canvas> <caption> <cite> <code> <col> <colgroup> <datalist> <dd> <del> <details> <dfn> <dialog> <div> <dl> <dt> <em> <embed> <fieldset> <figcaption> <figure> <footer> <form> <head> <header> <h1> - <h6> <hr> <html> <i> <iframe> <img> <ins> <input> button <input> checkbox <input> color <input> date <input> datetime <input> datetime-local <input> email <input> file <input> hidden <input> image <input> month <input> number <input> password <input> radio <input> range <input> reset <input> search <input> submit <input> text <input> time <input> url <input> week <kbd> <label> <legend> <li> <link> <map> <mark> <menu> <menuitem> <meta> <meter> <nav> <object> <ol> <optgroup> <option> <output> <p> <param> <pre> <progress> <q> <s> <samp> <script> <section> <select> <small> <source> <span> <strong> <style> <sub> <summary> <sup> <table> <tbody> <td> <tfoot> <th> <thead> <tr> <textarea> <time> <title> <track> <u> <ul> <var> <video>

Other References

CSSStyleDeclaration JS Conversion


JavaScript while Statement


Example

Loop through a block of code as long as a variable (i) is less than 5:

var text = "";
var i = 0;
while (i < 5) {
  text += "<br>The number is " + i;
  i++;
}
Try it Yourself »

More "Try it Yourself" examples below.


Definition and Usage

The while statement creates a loop that is executed while a specified condition is true.

The loop will continue to run as long as the condition is true. It will only stop when the condition becomes false.

JavaScript supports different kinds of loops:

  • for - loops through a block of code a number of times
  • for/in - loops through the properties of an object
  • for/of - loops through the values of an iterable object
  • while - loops through a block of code while a specified condition is true
  • do/while - loops through a block of code once, and then repeats the loop while a specified condition is true

Tip: Use the break statement to break out of a loop, and the continue statement to skip a value in the loop.


Browser Support

Statement
while Yes Yes Yes Yes Yes

Syntax

while (condition) {
  code block to be executed
}

Parameter Values

Parameter Description
condition Required. Defines the condition for running the loop (the code block). If it returns true, the loop will start over again, if it returns false, the loop will end.

Note: If the condition is always true, the loop will never end. This will crash your browser.

Note: If you are using a variable with the condition, initialize it before the loop, and increment it within the loop. If you forget to increase the variable, the loop will never end. This will also crash your browser.


Technical Details

JavaScript Version: ECMAScript 1

More Examples

Example

Loop through the indices of an array to collect the car names from the cars array:

var cars = ["BMW", "Volvo", "Saab", "Ford"];
var text = "";
var i = 0;
while (i < cars.length) {
  text += cars[i] + "<br>";
  i++;
}
Try it Yourself »

Example above explained:

  • First, we set a variable before the loop starts (var i = 0;)
  • Then, we define the condition for the loop to run. As long as the variable is less than the length of the array (which is 4), the loop will continue
  • Each time the loop executes, the variable is incremented by one (i++)
  • Once the variable is no longer less than 4 (array's length), the condition is false, and the loop will end

Example

Loop backwards through the indices of an array:

var cars = ["BMW", "Volvo", "Saab", "Ford"];
var text = "";
var len = cars.length;
while (len--) {
  text += cars[len] + "<br>";
}
Try it Yourself »

Example

 Using the break statement - Loop through a block of code, but exit the loop when the variable i is equal to "3":

var text = "";
var i = 0;
while (i < 5) {
  text += "<br>The number is " + i;
  i++;
  if (i == 3) {
    break;
  }
}
Try it Yourself »

Example

Using the continue statement - Loop through a block of code, but skip the value of "3":

var text = "";
var i = 0;
while (i < 5) {
  i++;
  if (i == 3) {
    continue;
  }
text += "<br>The number is " + i;
}
Try it Yourself »

Related Pages

JavaScript Tutorial: JavaScript While Loop

JavaScript Reference: JavaScript do ... while Statement

JavaScript Reference: JavaScript for Statement

JavaScript Reference: JavaScript break Statement

JavaScript Reference: JavaScript continue Statement