Ninja homework3

by Olga Zhizhka

JavaScript

//Домашнее задание №3
//п1
var book = {
  title: 'Eloquent Javascript',
  author: 'Marijn Haverbeke',
  pages: 300,
  coast: 1000
};

for (key in book) {
  alert(key + ' : ' + book[key]);
};

//п2
function concat(value1, value2) {
  var string1 = value1.toString(),
    string2 = value2.toString();

  return ('"' + string1 + string2 + '"');
};
alert(concat(2, 3));
alert(concat(false, 3));

//п3
function area(value1, value2) {
  var areaValue;
  if (arguments.length < 2) {
    areaValue = parseInt(value1) * parseInt(value1);
  } else {
    areaValue = parseInt(value1) * parseInt(value2);
  }
  return areaValue;
};
alert(area(2, 4));
alert(area(7));

//п4
function checkNumber() {
  var flag1, flag2, flag3 = false;
  for (var i = 0; i < arguments.length; i++) {
    if (isNaN(+arguments[i])) {
      flag1 = true;
    } else {
      if (arguments[i] < 0) {
        flag2 = true;
      } else {
        flag3 = true;
      }
    };
  };
  if (flag1) return 'underfined';
  else if (flag2) return false;
  else if (flag3) return true;
};
alert(checkNumber(3, 3, 2));
alert(checkNumber(3, -3, 2));
alert(checkNumber(3, 'fff', 2));

//п5
function concatArrays() {
  var newArray = [];
  for (var i = 0; i < arguments.length; i++) {
    if (arguments[i] instanceof Array) {
      newArray = newArray.concat(arguments[i]);
    } else {
      continue;
    };
  };
  return newArray;
};
console.log(concatArrays(1, 2, [2, 3, 4], 4, [33, 42, 51]));

//п.6
var pow = function(x, y) {
  var result = 1;
  for (var count = 0; count < y; count++)
    result *= x;
  return result;
};
alert(pow(2, 10));


//п.7
var myArray = [1, 25, 300, -4, 32];

function summArr(arr, i) {
  i = i || 0;
  if (i == arr.length - 1) {
    return arr[i];
  } else {
    return arr[i] + summArr(arr, i + 1);
  }
}
console.log(summArr(myArray));

//п.8
var user = {
  name: 'Olga',
  login: 'zhizhka',
  password: '123',
  address: {
    city: 'Odessa',
    house: {
      flat: 20,
      floor: 5
    }
  }
};

function...