Open In App

JavaScript Program to Print Square Star Pattern

Last Updated : 13 Mar, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we are going to discuss how we can make a square star pattern. we have to print “*” in the console in such a way that it turns or looks like a solid square. we can use loops in different manners for this pattern.

Example:

Input: 4
Output: * * * *
* * * *
* * * *
* * * *
Input: 3
Output: * * *
* * *
* * *

These are the following ways to print a square star pattern in the console:

  • Using nested for loop
  • Using for loop
  • Using String Repeat Method
  • Using Array and Join Method
  • Using ES6 Repeat and Template Literal

Using nested for loop

In this approach, we are using for loop in a nesting way, if n= 4 then the star must be 4*4 which is 16 so that it can make perfect square. The outer loop will decide the row and inner loop will decide the column. For each row, the “line” variable adds one star and some spaces.

Example: It describes how we can print a square pattern star in the console using nested for loop

Javascript




// Function for printing 
// star square pattern
// in console
  
function printSquare(size) {
    for (let i = 1; i <= size; i++) {
        let line = "";
        for (let j = 1; j <= size; j++) {
            line += "*  ";
        }
        console.log(line);
    }
}
  
// Square pattern size variable
let patternSize = 5;
  
// Calling function for pattern printing 
printSquare(patternSize);


Output

*  *  *  *  *  
*  *  *  *  *  
*  *  *  *  *  
*  *  *  *  *  
*  *  *  *  *  

Time complexity: O(N2)

Space complexity: O(1)

Using for loop

In this approach we are creating two separate loops, first loop will add n(size of square) stars in a “line” variable for each row and the second loop will print that “line” variable n(size of square) times.

Example: It describes how we can print a square pattern star in the console using for loop

Javascript




// Creating variable
let line = "";
// Function for printing square star pattern
function square(n) {
    // First loop for row
    for (let i = 1; i <= n; i++) {
        line += "*  ";
    }
    // Second loop for column
    for (let j = 1; j <= n; j++) {
        console.log(line);
    }
}
  
let size = 5;
// Calling function for printing pattern
square(size);


Output

*  *  *  *  *  
*  *  *  *  *  
*  *  *  *  *  
*  *  *  *  *  
*  *  *  *  *  

Time complexity: O(N)

Space complexity: O(1)

Using String Repeat Method

In this approach we are using “repeat()” inbuilt function of JavaScript which takes single argument, which is the number of times the string should be repeated. In a custom function after using repeat() function we need to print that string into the console for that we are using for loop which iterates n(size) times and creating square pattern in console.

Example: It describes how we can print a square pattern star in the console using String reapeat method

Javascript




// Function for printing square pattern
function printSquare(n) {
    const row = "*  ".repeat(n);
    // For loop
    for (let i = 0; i < size; i++) {
        console.log(row);
    }
}
let size = 5;
// Calling function printSquare
printSquare(size);


Output

*  *  *  *  *  
*  *  *  *  *  
*  *  *  *  *  
*  *  *  *  *  
*  *  *  *  *  

Time complexity: O(N)

Space complexity: O(1)

Using Array and Join Method

In this approach we are using Array and “fill()” function which is used to fill all the value provided in the argument into the array. After that we are using for loop for printing out that array into the console n(size of square) times.

Example: It describes how we can print a square pattern star in the console using array and join method

Javascript




// Javascript program for
// printing square of stars
// in console
  
function printSquare(n) {
    const rowArray = Array(n).fill('*');
    for (let i = 0; i < size; i++) {
        console.log(rowArray.join(' '));
    }
}
  
// Calling fucntion
let size = 5;
printSquare(size);


Output

* * * * *
* * * * *
* * * * *
* * * * *
* * * * *

Time complexity: O(N)

Space complexity: O(1)

Using ES6 Repeat and Template Literals:

In this approach we are using template literal along with “repeat()” function. Creating a variable and storing the value produced by reapeat function and then again letting another variable “square”, In which template literal is used. `${row}\n` is used to dynamic access of row variable and “\n” is for new line. it creates a string where the content of row appears followed by a line break. After that we are printing that variable in console.

Example: It describes how we can print a square pattern star in the console using ES6 repeat and template literals

Javascript




// Javascript program for
// printing square of stars
// in console
  
let size = 3;
const rowOfSquare = '* '.repeat(size);
  
// Using template literal
// \n is used for next line
  
const square = `${rowOfSquare}\n`.repeat(size);
  
// Printing square
console.log(square);


Output

* * * 
* * * 
* * * 



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads