Skip to content

This is repository for my personal notes on usefull javascript array methods.

Notifications You must be signed in to change notification settings

fencermonir/javascript-array-functions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 

Repository files navigation

JavaScript Useful Array Functions

1. array.map()

āϝāĻ–āύ āϕ⧋āύ āĻ…ā§āϝāĻžāϰ⧇āϤ⧇ .map() āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšā§Ÿ, āχāĻšāĻž āύāϤ⧁āύ āĻ…ā§āϝāĻžāϰ⧇ āĻŦāĻžāύāĻžāĻŦ⧇, āĻ…āϰāĻŋāϜāĻŋāύāĻžāϞ āĻ…ā§āϝāĻžāϰ⧇ āĻāϰ āĻŽāĻĄāĻŋāĻĢāĻžāχāĻĄ āĻ­āĻžāϰāϏāύāĨ¤ .map() āĻā§āĻ•āϟāĻŋ āĻĢāĻžāĻ‚āĻļāύ āĻ¨ā§‡ā§Ÿ, āϝāĻž āĻ“āχ āĻ…ā§āϝāĻžāϰ⧇ āĻāϰ āĻĒā§āϰāϤāĻŋāϟāĻž āφāχāĻŸā§‡āĻŽ āϕ⧇ āϞ⧁āĻĒ āĻ•āϰāĻŦ⧇ āĻāĻŦāĻ‚ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāĻŦā§‡ā§ āĻĒā§āĻ°ā§Ÿā§‹āϜāύ āĻ…āύ⧁āϝāĻžā§Ÿā§€āĨ¤

.map() āĻŽā§‡āĻĨāĻĄ āϟāĻž āĻ•āĻžāĻœā§‡ āϞāĻžāϗ⧇ āϝāĻ–āύ āφāĻŽāϰāĻž āϕ⧋āύ āĻ…ā§āϝāĻžāϰ⧇ āĻāϰ āĻĒā§āϰāϤāĻŋāϟāĻž āφāχāĻŸā§‡āĻŽ āϕ⧇ āφāĻĒāĻĄā§‡āϟ āĻ•āϰāϤ⧇ āϚāĻžāχ āĻāĻŦāĻ‚ āύāϤ⧁āύ āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāϰ⧇ āϤ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāϤ⧇ āϚāĻžāχāĨ¤

āϚāϞ⧁āύ āĻšāĻžāϤ āύ⧋āĻ‚āϰāĻž āĻ•āϰāĻŋāσ

āϧāϰ⧇ āύ⧇āχ āφāĻŽāĻžāĻĻ⧇āϰ āĻāĻ•āϟāĻŋ car āĻāϰ āĻ…ā§āϝāĻžāϰ⧇ āφāϛ⧇āσ

const cars = ['BMW', 'AUDI', 'COROLA'];

āφāĻŽāϰāĻž āϚāĻžāχ āĻĒā§āϰāϤāĻŋāϟāĻž āĻ—āĻžā§œāĻŋ āĻāϰ āĻĒāϰ āĻāĻ•āϟāĻŋ āĻŦāĻžāĻ•ā§āϝ āϜ⧁āϰ⧇ āĻĻāĻŋāϤ⧇āĨ¤ āϚāϞ⧁āύ āĻĻ⧇āĻ–āĻŋ āĻāχ āĻ•āĻžāϜāϟāĻŋ āĻ•āĻŋāĻ­āĻžāĻŦ⧇ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŋ .map() āĻŽā§‡āĻĨāĻĄ āĻĻāĻŋā§Ÿā§‡āĨ¤

const coolCars = cars.map( car => {
  return `{$car is a cool car}`;
} );

// result: ['BMW is a cool car', 'AUDI is a cool car', 'COROLA is a cool car']

āĻ…āĻ¸ā§āĻĨāĻŋāϰ!!! .map() āĻŽā§‡āĻĨāĻĄ āϟāĻŋ āύāϤ⧁āύ āĻā§āĻ•āϟāĻŋ āĻ…ā§āϝāĻžāϰ⧇ āϤ⧈āϰāĻŋ āĻ•āϰāϞ āĻāĻŦāĻ‚ āĻĒā§āϰāϤāĻŋāϟāĻž āφāχāĻŸā§‡āĻŽ āĻ āύāϤ⧁āύ āĻŸā§‡āĻ•ā§āϏāϟ āϜ⧁āϰ⧇ āĻĻāĻŋāϞāĨ¤

āϚāϞ⧁āύ āĻ•āϤāϗ⧁āϞ⧋ object āĻāϰ āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāϰ⧇ āϕ⧇ āĻŽāĻĄāĻŋāĻĢāĻžāχ āĻ•āϰāĻŋ .map() āĻŽā§‡āĻĨāĻĄ āĻĻāĻŋā§Ÿā§‡āĨ¤ āϧāϰ⧇ āύ⧇āχ āφāĻŽāĻžāĻĻ⧇āϰ ā§āĻ•āĻžāϛ⧇ āĻ•āϤ āϗ⧁āϞ⧋ āĻ—āĻžā§œāĻŋāϰ āĻŸā§‡āĻ•ā§āϏ āĻĒā§āϰāĻžāχāϏ āĻŦāĻŋāĻšā§€āύ āĻ…āĻŦā§āĻœā§‡āĻ•ā§āϟ āĻ°ā§Ÿā§‡āϛ⧇ āĻāĻŦāĻ‚ āφāĻŽāϰāĻž āϚāĻžāĻšā§āĻ›āĻŋ āĻĒā§āϰāϟāĻŋ āϟāĻž car āĻ priceWithTax āϝ⧋āĻ— āĻ•āϰāϤ⧇āĨ¤


const cars = [
  { brand: 'Porshe', price: 5000 },
  { brand: 'Audi', price: 4000}
];

const carsWithTax = cars.map(car => {
  // āϝ⧇āĻšā§‡āϤ⧁ āφāĻŽāϰāĻž āĻ…āĻŦā§āĻœā§‡āĻ•ā§āϟ āϰāĻŋāϟāĻžāĻ°ā§āύ āĻ•āϰāϤ⧇ āϚāĻžāχ
  return {
    ...car,  // āĻ…āϰāĻŋāϜāĻŋāύāĻžāϞ āĻ•āĻžāϰ āĻ…āĻŦā§āĻœā§‡āĻ•ā§āϟ āϕ⧇ āϰāĻŋāϟāĻžāĻ°ā§āύ āĻ•āϰāĻŦ⧇
    priceWithTax: car.price * 1.4  // āĻāĻŦāĻ‚ āύāϤ⧁āύ āĻāĻ•āϟāĻŋ āĻ­ā§āϝāĻžāϞ⧁ āϝ⧋āĻ— āĻ•āϰāĻŦ⧇ āϏāĻžāĻĨ⧇ āĻŸā§āϝāĻžāĻ•ā§āϏ āϏāĻš āĻĒā§āϰāĻžāχāϏ āĻāϰ 
  }
});

// result: 
[
  {brand: 'Porshe', price: 5000, priceWithTax: 7000},
  {brand: 'Audi', price: 4000, priceWithTax: 5600}
]

āĻ•āĻ–āύ .map() āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ?

āφāĻĒāύāĻŋ āϝāĻ–āύ āϕ⧋āύ āĻ…ā§āϝāĻžāϰ⧇ āĻāϰ āφāχāĻŸā§‡āĻŽ āϕ⧇ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāϤ⧇ āϚāĻžāύ āĻāĻŦāĻ‚ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāĻŋāϤ āĻĢāϞāĻžāĻĢāϞ āύāϤ⧁āύ āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāϰ⧇ āϤ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāϤ⧇ āϚāĻžāύāĨ¤ āĻ•āϞāĻŦā§āϝāĻžāĻ• āĻĢāĻžāĻ‚āĻļāύ⧇ āĻ•āĻ¨ā§āĻĄāĻŋāĻļāύ āĻ…āύ⧁āϝāĻžā§Ÿā§€ āĻāĻ• āĻŦāĻž āĻāĻ•āĻžāϧāĻŋāĻ• āĻ…āĻĨāĻŦāĻž āϏāĻŦ āĻĄāĻžāϟāĻž āϕ⧇ āφāĻĒāύāĻŋ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŦ⧇āύāĨ¤ āĻŽāύ⧇ āϰāĻžāĻ–āĻŦ⧇āύ .map() āĻŽā§‡āĻĨāĻĄ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āύāϤ⧁āύ āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāϰ⧇ āϰāĻŋāϟāĻžāĻ°ā§āύ āĻ•āϰāĻŦ⧇,āĻĒā§‚āĻ°ā§āĻŦ⧇āϰ āĻ…ā§āϝāĻžāϰ⧇ āϤ⧇ āϕ⧋āύ āĻĒāϰāĻŋā§āĻŦāĻ°ā§āϤāύ āĻ•āϰāĻŦ⧇ āύāĻžāĨ¤

āφāϰ āϜāĻžāύāϤ⧇ āĻĸ⧁āρ āĻŽāĻžāϰ⧁āύ āĻāχāĻ–āĻžāύ⧇

2. array.filter()

āύāĻžāĻŽā§‡āχ āĻĒāϰāĻŋāϚ⧟ āĻĒāĻžāĻ“ā§ŸāĻž āϝāĻžāĻšā§āϛ⧇ āĻāχ āĻŽā§‡āĻĨāĻĄ āĻŦāĻž āĻĢāĻžā§āĻ‚āĻļāύāϟāĻŋ āĻ•āĻŋ āĻ•āĻžāϜ āĻ•āϰ⧇āĨ¤ .filter() āĻŽā§‡āĻĨāĻĄāϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻļāĻ°ā§āϤ⧇āϰ āĻ­āĻŋāĻ¤ā§āϤāĻŋāϤ⧇ āφāϰ⧇āϰ āφāχāĻŸā§‡āĻŽāϗ⧁āϞ⧋ āϰāĻŋāϟāĻžāĻ°ā§āύ āĻ•āϰ⧇āĨ¤ .map() āĻŽā§‡āĻĨāĻĄ āĻāϰ āĻŽāϤ .filter() āĻŽā§‡āĻĨāĻĄāĻ“ āύāϤ⧁āύ āĻāĻ•āϟāĻŋ āĻŽāĻĄāĻŋāĻĢāĻžāχāĻĄ āĻ…ā§āϝāĻžāϰ⧇ āϤ⧈āϰāĻŋ āĻ•āϰ⧇, āĻŽā§‚āϞ āĻ…ā§āϝāĻžāϰ⧇ āĻāϰ āϕ⧋āύ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰ⧇ āύāĻžāĨ¤ āϝ⧇āĻŽāύ āφāĻŽāϰāĻž āϕ⧋āύāĻ“ āĻ—āĻžāĻĄāĻŧāĻŋāϰ āĻŽā§‚āĻ˛ā§āϝ⧇āϰ āωāĻĒāϰ⧇ āĻāĻ•āϟāĻŋ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻŽāĻžāύ⧇āϰ āωāĻĒāϰ⧇ āĻ­āĻŋāĻ¤ā§āϤāĻŋ āĻ•āϰ⧇ āĻ—āĻžā§œāĻŋāϰ āĻ…ā§āϝāĻžāϰ⧇ āĻĢāĻŋāĻ˛ā§āϟāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŋāĨ¤ āĻ—āĻžā§œāĻŋāϰ āĻ…ā§āϝāĻžāϰ⧇āσ

const cars = [
 {brand: "Porsche", price: 100000},
  {brand: "Audi", price: 80000},
  {brand: "Toyota", price: 30000}
];

āĻāĻ–āύ āϧāϰāĻž āϝāĻžāĻ• 40,000 āĻŦāĻž āϤāĻžāϰ āĻŦ⧇āĻļāĻŋ āĻŽā§‚āĻ˛ā§āϝ⧇āϰ āϏāĻŽāĻ¸ā§āϤ āĻ—āĻžāĻĄāĻŧāĻŋ āĻŦā§āϝāϝāĻŧāĻŦāĻšā§āϞāĨ¤ āφāĻŽāϰāĻž .filter() āĻŽā§‡āĻĨāĻĄ āĻĻāĻŋā§Ÿā§‡ āϏāĻ¸ā§āϤāĻž āĻāĻŦāĻ‚ āĻŦā§āϝ⧟āĻŦāĻšā§āϞ āĻ—āĻžā§œāĻŋ āĻŦ⧇āϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŋāĨ¤

const expensiveCars = cars.filter( car => car.price >= 40000);
const cheapCars = cars.filter(car => car.price < 40000);
// Result - Expensive Cars
[
  {brand: "Porsche", price: 100000},
  {brand: "Audi", price: 80000}
];// Result - Cheap Cars
[
  {brand: "Toyota", price: 30000}
];

āĻāχāĻ–āĻžāύ⧇ āĻ…ā§āϝāĻžāϰ⧇ āĻāϰ āĻĒā§āϰāϤāĻŋāϟāĻŋ āφāχāĻŸā§‡āĻŽāϕ⧇ āĻšā§‡āĻ• āĻ•āϰāĻž āĻšā§Ÿā§‡āϛ⧇ āϝāĻĻāĻŋ āĻ•āĻ¨ā§āĻĄāĻŋāĻļāύ āϕ⧇ āĻĢ⧁āϞāĻĢāĻŋāϞ āĻ•āϰ⧇ āϤāĻžāĻšāϞ⧇ āύāϤ⧁āύ āĻ…ā§āϝāĻžāϰ⧇ āϤ⧇ āϰāĻŋāϟāĻžāĻ°ā§āύ āĻ•āϰāĻž āĻšā§Ÿā§‡āϛ⧇āĨ¤

āĻ•āĻ–āύ .filter() āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ?

āϝāĻ–āύ āφāĻĒāύāĻŋ āϕ⧋āύ āĻ•āĻ¨ā§āĻĄāĻŋāĻļāύ āĻāϰ āωāĻĒāϰ āĻ­āĻŋāĻ¤ā§āϤāĻŋ āĻ•āϰ⧇ āĻ…ā§āϝāĻžāϰ⧇ āĻĨ⧇āϕ⧇ āφāχāĻŸā§‡āĻŽ āϕ⧇ āĻŦāĻžāĻĻ āĻĻāĻŋāϤ⧇ āϚāĻžāύāĨ¤ .map() āĻŽā§‡āĻĨāĻĄ āĻ•āĻŋāĻ¨ā§āϤ⧁ āϕ⧋āύ āφāχāĻŸā§‡āĻŽ āϕ⧇ āĻŦāĻžāĻĻ āĻĻā§‡ā§ŸāύāĻŋ āϝ⧇āĻ–āĻžāύ⧇ .filter() āĻŽā§‡āĻĨāĻĄ āφāχāĻŸā§‡āĻŽ āϕ⧇ āĻŦāĻžāĻĻ āĻĻāĻŋā§Ÿā§‡ āĻĻā§‡ā§ŸāĨ¤

āφāϰ āϜāĻžāύāϤ⧇ āĻĸ⧁āρ āĻŽāĻžāϰ⧁āύ āĻāχāĻ–āĻžāύ⧇

3. array.every() method

array.every() āĻŽā§‡āĻĨāĻĄ āĻāϰ āϏāĻŋāύāĻŸā§āϝāĻžāĻ•ā§āϏāσ Array.every(callback(element[, index[, array]])[, thisArg])

.every() āĻŽā§‡āĻĨāĻĄ āφāϰ⧇āϰ āĻĒā§āϰāϤāĻŋāϟāĻž āĻ­ā§āϝāĻžāϞ⧁āϕ⧇ āϕ⧋āύ āĻāĻ•āϟāĻž āĻ•āĻ¨ā§āĻĄāĻŋāĻļāύāĻ āĻŸā§‡āĻ¸ā§āϟ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āĻĢāĻžāχāύāĻžāϞāĻŋ āϝāĻĻāĻŋ āϏāĻŦ āϗ⧁āϞ⧋ āĻ­ā§āϝāĻžāϞ⧁ āĻŸā§‡āĻ¸ā§āϟ āĻĒāĻžāϏ āĻ•āϰ⧇ āϤāĻžāĻšāϞ⧇ āĻŦ⧁āϞāĻŋ⧟āĻžāύ true āĻ…āĻĨāĻŦāĻž false āϰāĻŋāϟāĻžāĻ°ā§āύ āĻ•āϰ⧇āĨ¤

āϧāϰ⧇ āύāĻŋāύ āφāĻŽāϰāĻž āĻ•āϤ āϗ⧁āϞ⧋ āύāĻžāĻŽā§āĻŦāĻžāϰ āĻāϰ āĻ…ā§āϝāĻžāϰ⧇ āϕ⧇ āĻšā§‡āĻ• āĻ•āϰāϤ⧇ āϚāĻžāĻšā§āĻ›āĻŋ āϝ⧇, āϤāĻžāϰ āϏāĻŦ āϗ⧁āϞ āύāĻžāĻŽā§āĻŦāĻžāϰ āĻĒāϜāĻŋāϟāĻŋāĻ­ āĻ•āĻŋāύāĻž? āĻāχ āĻ•āĻžāϜ āϟāĻŋ āφāĻŽāϰāĻž āϏāĻšāĻœā§‡āχ .every() āĻŽā§‡āĻĨāĻĄ āĻĻāĻŋā§Ÿā§‡ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŋāĨ¤

let numbers = [10, -30, 30, 20];
let allPositive = numbers.every(function(item){
  return item > 0;
});
// es6
allPositive = numbers.every( item => item > 0 );
console.log(allPositive); // false

numbers = [10, 30, 45, 20];
allPositive = numbers.every(item => item > 0 );
console.log(allPositive); // true

āĻŽāύ⧇ āĻ•āϰ⧇āύ āφāĻĒāύāĻžāϰ āĻāĻ•āϟāĻŋ āϰ⧇āϜāĻŋāĻ¸ā§āĻŸā§āϰ⧇āĻļāύ āĻĢāĻ°ā§āĻŽ āφāϛ⧇ āφāĻĒāύāĻŋ āĻšā§‡āĻ• āĻ•āϰāϤ⧇ āϚāĻžāĻšā§āϛ⧇āύ āϝ⧇, āχāωāϜāĻžāϰ āϏāĻŦ required āĻĢāĻŋāĻ˛ā§āĻĄ āϗ⧁āϞ⧋ āĻĒ⧁āϰāĻŖ āĻ•āϰ⧇ āĻ•āĻŋāύāĻžāĨ¤ āĻāχ āĻ•āĻžāϜāϟāĻž āφāĻŽāϰāĻž āĻāχ āĻŽā§‡āĻĨāĻĄ āĻĻāĻŋā§Ÿā§‡ āϏāĻšāĻœā§‡ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŋāĨ¤

window.load = function(){
  const form = document.getElementById('_form');
  form.addEventListener('submit',function(event){
    event.preventDefault();
    const fields = ['first_name', 'email', 'phone', 'city'];
    const allFieldsEntered = fields.every( item => document.getElementById(item).value.trim() !== '');


    if (allFieldsEntered) {
      console.log('All the fields are entered');
      // All the field values are entered, submit the form
    } else {
      alert('Please, fill out all the field values.');
    }
  });
}

.every() āĻŽā§‡āĻĨāĻĄ āĻāϰ āϏ⧁āĻŦāĻŋāϧāĻž āĻšāĻšā§āϛ⧇, āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āϕ⧋āĻĄ āϞ⧇āĻ–āĻž āĻ›āĻžā§œāĻžāχ āĻĻā§āϰ⧁āϤ āϏāĻŦ āĻ­ā§āϝāĻžāϞ⧁ āϕ⧇ āĻšā§‡āĻ• āĻ•āϰāĻž āϝāĻžā§Ÿ āϕ⧋āύ āĻāĻ•āϟāĻŋ āĻ•āĻ¨ā§āĻĄāĻŋāĻļāύ āĻāĨ¤

āĻ•āĻ–āύ .every() āĻŽā§‡āĻĨāĻĄ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ?

āφāĻĒāύāĻŋ āϝāĻ–āύ āύāĻŋāĻļāĻŋāϤ āĻ•āϰāϤ⧇ āϚāĻžāύ āϝ⧇ āϕ⧋āύ āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāϰ⧇āϰ āĻĒā§āϰāϤāĻŋāϟāĻž āφāχāĻŸā§‡āĻŽ āύāĻŋāĻ°ā§āĻĻāĻŋāĻ¸ā§āϟ āϕ⧋āύ āĻāĻ•āϟāĻŋ āĻļāĻ°ā§āϤāϕ⧇ āĻŽā§‡āύ⧇ āϚāϞ⧇ āĻ•āĻŋāύāĻžāĨ¤

āφāϰ āϜāĻžāύāϤ⧇ āĻĸ⧁āρ āĻŽāĻžāϰ⧁āύ āĻāχāĻ–āĻžāύ⧇

About

This is repository for my personal notes on usefull javascript array methods.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published