JSFiddle - React, Tailwind, and code Playground
by vaheed akhtar
JavaScript
let nums = [1,2,3,4,5,6,7];
Array.prototype.myFilter = function(func) {
let filtered = [];
for(let i=0; i<this.length; i++) {
if(func(this[i], i, this)) {
filtered.push(this[i])
}
}
return filtered;
}
let res = nums.myFilter(n=> n >= 4);
//console.log(res);
Array.prototype.myMap = function(func) {
let filtered = [];
for(let i=0; i<this.length; i++) {
filtered.push(func(this[i], i, this));
}
return filtered;
}
let mapped = nums.myMap(num=> num * 5);
//console.log(mapped);
Array.prototype.myReduce = function(func) {
let result = 0;
for(let i=0; i<this.length; i++) {
func(result +=this[i]);
}
return result;
}
let sum = nums.myReduce((acc, val) => acc + val);
//console.log(sum);
let matrix = [[1,2,3],[4,5,6],[7,8,9]];
function rotateMatrix(matrix) {
let n = matrix.length;
for(let i = 0; i<n/2; i++) {
for(let j = i; j<n-i-1; j++) {
let tmp = matrix[i][j];
matrix[i][j] = matrix[n-j-1][i];
matrix[n-j-1][i] = matrix[n-i-1][n-j-1];
matrix[n-i-1][n-j-1] = matrix[j][n-i-1];
matrix[j][n-i-1] = tmp;
}
}
console.log(matrix);
}
rotateMatrix(matrix);