JSFiddle - React, Tailwind, and code Playground

by Andrey

JavaScript

//reduce
var source = [1,2,3,4,5];
console.log(source.reduce(function(a, b){
	return a+b;
},1));
var res = 0;

function myReduce(arr, func, init){
	
  if(arguments[2] == undefined){
  	res = arr[0];
    for(i = 1; i < arr.length; i++){
  		func(arr[i])
 		};
  }
  else{
  	res = init;
    for(i = 0; i < arr.length; i++){
  		func(arr[i])
 		};
  }
  return res;
};

console.log(myReduce(source, function(input){
	return res += input;  
},1));


//map
/*var source = [1,2,3,4,5];
var res = [];
function myMap(arr, func){
	for(i = 0; i < arr.length; i++){
  	res[i] = func(arr[i]) 
  };
};

myMap(source, function(input){
	return input*2;
});
console.log(res);*/

/*forEach*/
/*var source = [1,2,3,4,5];

function myForEach(arr, func){
	for(var i = 0; i < arr.length; i++){
  	func(arr[i], i);
  };

};

myForEach(source, function func(val, index){
	console.log(val, index);
})*/

/*splice*/
/*var source = [1,2,3,4,5];

//console.log(source.splice(2, 2));
//console.log(source);

function mySlice (inputSource, initial, endDel){
	var res = [],
   leftArray = [],
   rightArray = [],
   arg = [],
   newArr = [],
   rightArrayWithoutPush = [];
   
  //элементы, которые остануться слева перед удаляемыми
  for(var i = 0; i < initial; i++){
  	leftArray.push(inputSource[i]);
  };
  //элементы, которые остануться справа после удаляемых
  for(i = (initial + endDel); i<inputSource.length; i++){
    	rightArrayWithoutPush[i-(initial + endDel)] = inputSource[i];
     // alert(inputSource[i]);
   rightArray.push(inputSource[i]);
  }
   console.log('without', rightArrayWithoutPush);
  console.log(leftArray, rightArray);
  
  //console.log(res.concat(leftArray, rightArray));
  //массив добавляемых элементов
  for(i = 3; i<arguments.length; i++){
  	arg.push(arguments[i]);
   // console.log(arg);
  }
  
  newArr = newArr.concat(leftArray, arg, rightArray);
  //console.log(leftArray, arg, rightArray)
  console.log(newArr);
    return newArr;
};

mySlice(source, 2, 0, "Привет",...