07.06.2016 Задачи по массивам и объектам

by LuckyCat

JavaScript

/*
http://jscourse.com/task/summ-numbers-by-condition
Просуммировать числа из массива, которые больше 100

Реализовать функцию sumOnly100Plus, которая принимает аргументом массив, и возвращает сумму всех чисел массива, которые больше 100. В массиве могут быть не только числовые данные, их никак не учитывать. Пример работы:

sumOnly100Plus([150, "200", " ", 30, 300]); // 450


*/

function sumOnly100Plus(arr) {
	var sum = 0;
	for (var i=0; i < arr.length; i+=1) {
		if (typeof arr[i] === 'number' && arr[i] > 100) {
			console.log(arr[i]);
			sum += arr[i];
		}
	}
	
	return sum;
}

/*
http://jscourse.com/task/extract-odd-items

Отфильтровать элементы массива с нечетным индексом

Реализовать функцию extractOddItems(arr), которая возвращает новый массив, в котором содержатся только те элементы, которые обладали нечетным индексом в массиве, переданном в качестве аргумента. Пример работы:

extractOddItems([0,1,0,1,0,1]); // [1,1,1]
extractOddItems([1,2,3,4,5]); [2, 4]

*/

function extractOddItems(arr) {

  var arr2 = [];

  for (var i=0; i < arr.length; i+=1) {

    if (arr[i] % 2 === 0 && arr[i] !== null) {

      console.log(arr[i]);

      arr2.push(arr[i]);

    }

  }

  

  for (var i=0; i < arr2.length; i+=1) {

    // console.log(arr2[i]);

  }

  

  return arr2;

}









http://jscourse.com/task/contains
Проверить является ли один массив подмножеством второго

Дописать функцию contains(where, what). Если все элементы массива what содержатся в массиве where, функция должна возвращать true. Пустой массив является подмножеством любого массива. Порядок вхождения элементов в массив не имеет значения. Примеры:

contains([1,2,3], [3,2]); // true
contains([1,2,3], [3,2,1,2,3]); // true

function contains(where, what) {

  for (var i=0; i < what.length; i+=1) {

    //console.log("i = ", i, "; what[", i, "]: ", what[i]);

        

    for (var j=0; j < where.length; j+=1) {

      //console.log("what[i]: ", what[i]);

      //console.log("where[j]: ", where[j]);

...