iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 28
0

有時面試時會看到需求要ES5、ES6的技術,
其實不太了解是甚麼,
剩下最後的幾天來看看吧!

Strict mode

在一開始寫上"use strict";便會開啟strict mode,
在strict mode下會有許多限制:
例如像是不能使用未被宣告的變數。

string.trim()

可以移除掉前後多餘不必要的空格,
但不能移除word和word之間的:

var myStr = "    Too many    white   spaces !!!      ";
console.log(myStr.trim());  
// Too many    white   spaces !!!

Array.isArray()

確認object是否為array,

var fruit = ["apple", "banana", "lemon"];
var family = {
  father: "Jorge",
  mother: "Mary",
  brother: "Jack"
};
var bossBrain = [];

console.log(Array.isArray(fruit)); // true
console.log(Array.isArray(family)); // false
console.log(Array.isArray(bossBrain)); //true

Array.forEach()

可以call a function 給 array中的每個 element使用?!

var number = [1, 2, 5];

var myFunc = function(x) {
  console.log(x) // 1, 2, 5
};
number.forEach(myFunc);

Array.map()

Array.map()可以創建一個新的array
新array的elements為舊array的elements經由function回傳的結果,
原本的array並不會被改變。

var number = [1, 2, 5];

var myFunc = function(x) {
  return x + 2;
};
var arr2 = number.map(myFunc);
console.log(arr2); // [3, 4, 7]
console.log(number); // [1, 2, 5]

Array.filter()

Array.filter()可以創建一個由舊的array中通過function檢驗之element所構成的新array。

var number = [1, 2, 5, 11, 17, 25];

var myFunc = function(x) {
  return x < 10;
};
var arr2 = number.filter(myFunc);
console.log(arr2); // [1, 2, 5]
console.log(number); // [1, 2, 5, 11, 17, 25]

Array.reduce() Array.reduceRight()


Array.every()

可以檢查array中的elements是否全部通過function的條件。

var number = [1, 2, 5, 11, 17, 25];

var myFunc = function(x) {
  return x > 0;
};
var myFunc2 = function(x) {
  return x > 10;
};

var arr = number.every(myFunc);
var arr2 = number.every(myFunc2);
console.log(arr); // true
console.log(arr2); // false

Array.some()

可以檢查array中的elements是否至少有一個通過function的條件。

var number = [1, 2, 5, 11, 17, 25];

var myFunc = function(x) {
  return x > 20;
};
var myFunc2 = function(x) {
  return x > 30;
};

var arr = number.some(myFunc);
var arr2 = number.some(myFunc2);
console.log(arr); // true
console.log(arr2); // false

Array.indexOf()Array.lastIndexOf()

可以尋找array中是否有某個元素並且回傳index值,
如果找不到則會回傳-1
第二個parameter則是可以指定從哪個index開始尋找的。

var number = [1, 2, 5, 11, 17, 25];

console.log(number.indexOf(5)); // 2
console.log(number.indexOf(7)); // -1
console.log(number.indexOf(5, 3)); // -1

lastIndexOf()indexOf()是相同的,
但是方向是從反方向。

var number = [1, 2, 5, 11, 17, 5, 25];

console.log(number.lastIndexOf(5)); // 5
console.log(number.indexOf(5)); // 2

內容好像有點多,明天可以繼續寫


上一篇
[27] AJAX - 實作POST
下一篇
[29] IDKJS - ES6
系列文
我在繡房繡小主常服的日子-- 初入前端工程師的第一個小挑戰30

尚未有邦友留言

立即登入留言