The Object


Merging objects

In es6 you can merge objects easily with Object.assign()

Notes

  • Merges objects with the 'base' object being the first argument passed into the method
  • you can pass in a new empty object to be merged into

Example One : Assign

//ES6 built in object extensions

var obj1 = {
  a: 1
}

var obj2 = {
  b: 2
}

var obj = Object.assign(obj1, obj2)

console.log(obj)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Example One : Assign - Empty Object

//ES6 built in object extensions

var obj1 = {
  a: 1
}

var obj2 = {
  b: 2
}

var obj = Object.assign({}, obj1, obj2)

console.log(obj)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Object setPrototypeOf

//ES6 built in object extensions - setPrototypeOf

let princess = {
  name : 'Annabelle'
};

let dog = {
  name : 'Broccoli'
}

//Before setting the prototype
console.log(princess.__proto__);
console.log(princess.__proto__ === Object.prototype);

// With setPrototype you can set the prototype of the object
// allows you to change the prototype of a object after it's been created

Object.setPrototypeOf(princess, dog);


//After overwriting the origional prototype
console.log(princess.__proto__);
console.log(princess.__proto__ === Object.prototype);
console.log(princess.__proto__ === dog);
console.log(princess.name)



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

The Math Object


//ES6 Math object extensions

let negNumber = -28;
let posNumber = 28;
let smallNumber = 0.13;
let mediumNumber = 0.99;
let largeNumber = 123.99;
let notNumber = NaN;
let aString = 'Potato';

// sign returns the 'sign' of the number the results will either be 1 (positive number) or -1 (negative number)
console.log(Math.sign(negNumber))
console.log(Math.sign(posNumber))
console.log(Math.sign(notNumber))
console.log(Math.sign(aString))



// trunc returns everything before the decimal place
console.log(Math.trunc(negNumber))
console.log(Math.trunc(smallNumber))
console.log(Math.trunc(mediumNumber))
console.log(Math.trunc(largeNumber))
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

Strings



//ES6 String Extensions

let name = 'Violet'


// startsWith() checks if the string starts with whatever value you pass in as a argument - Case Sensitive
console.log(name.startsWith('Vio'));
console.log(name.startsWith('vio'));
console.log(name.startsWith(''));

// endswith() checks if the string ends with whatever value you pass in as a argument - Case Sensitive
console.log(name.endsWith('et'));
console.log(name.endsWith('Et'));

// includes() checks if a string includes something
console.log(name.includes('Vio'));
console.log(name.includes('ole'));

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

The Number Object



//ES6 Number Object Extensions

let notNumber = NaN;
let stringNumber = '33'
let bigNumber = 1000000000000000000000000;
let infitineNumber = Infinity;
let floatNumber = 10.1;

// isNaN - checks if it is not a number
console.log(Number.isNaN(notNumber))
console.log(Number.isNaN(stringNumber))

// isFinite - checks if a number is finite
console.log(Number.isFinite(bigNumber))
console.log(Number.isFinite(infitineNumber))

// isInteger - checks if a number is a intiger
console.log(Number.isInteger(bigNumber))
console.log(Number.isInteger(floatNumber))
console.log(Number.isInteger(infitineNumber))

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

Arrays


Last Updated: 8/13/2019, 6:55:26 PM