Professional Documents
Culture Documents
JavaScriptES6 Cheat Sheet
JavaScriptES6 Cheat Sheet
ใช้งาน Promise
Variable function nameCat (name = 'George') {
return `My ${name} is so cute!`
Destructuring myTask.then(() => {
}
การประกาศตัวแปร console.log(nameCat()) การประกาศค่าผ่าน Array // ถ้า resolve (รันแล้วสามารถทำงานได้ตามเงื่อนไข)
จะทำงานใน then
var a การประกาศตัวแปรปกติใน JS แต่ Rest arguments const [name, age] = ['James', '3'] console.log('success yeah!')
มีปัญหาคือทะลุ block scope function countNum(...num) { console.log(`name: ${name}`)
let x การประกาศตัวแปรใหม่ใน ES6 ที่ return`Count: ${num.length}` console.log(`age: ${age}`) }).catch(() => {
เป็นตัวแปรที่ไม่ทะลุ block scope แล้ว }
Backtick : เครื่องหมายขีดเฉียงที่ปุ่มตัวหนอน `
console.log(`age: ${age}`)
// finally จะทำงานหลังสุดทุกกรณี ไม่ว่าจะทำ then หรือ
console.log('My name is Pompam'.startsWith('name')) ถ้ามีตัวเดียวจะใส่หรือไม่ใส่ ( ) ครอบก็ได้ สร้าง Promise Promise.all([myTask1, myTask2, myTask3, myTask4,
console.log('My name is Pompam'.startsWith('My')) var myFunc = a => { myTask5, ..., myTask(n)]).then(() =>
return a * 100 let result = 'success'
// สร้าง Promise
repeat() - รีเทิร์น string ซ้ำตามจำนวนที่กำหนด
} // Promise ทุกตัว resolve
console.log(myFunc(5)) let myTask = new Promise((resolve, reject) => {
console.log('All task have been completed.')
// โค้ดที่ทำงานแบบ Asynchronous
console.log('My'.repeat(5)) if (result === 'success') {
แบบ Return ทันที // กรณีทำงานเสร็จส่งผลลัพธ์ด้วย resolve()
).catch(() =>
resolve('ok')
ถ้าไม่ใส่ { } จะ return ค่าที่ได้โดยอัตโนมัติ // มีตัวที่ reject
Function argument var myFunc = (a, b, c) => a + b + c
}
else {
console.log('Some task failed.')
console.log(myFunc(5, 6, 7)) )
// กรณี error ส่งด้วย reject()
Default arguments สร้างค่าตังต้้ นให้กับ function reject('error')
**หากตัวใดตัว reject จะไม่เข้าเงื่อนไข then ทุกกรณี**
หากไม่ใส่ Argument ลงไปในการเรียก function ค่าของ }
Argument ที่ใส่เข้าไปจะเป็นค่าที่เราประกาศไว้ })
ใช้งาน Promise
Variable function nameCat (name = 'George') {
return `My ${name} is so cute!`
Destructuring myTask.then(() => {
}
การประกาศตัวแปร console.log(nameCat()) การประกาศค่าผ่าน Array // ถ้า resolve (รันแล้วสามารถทำงานได้ตามเงื่อนไข)
จะทำงานใน then
var a การประกาศตัวแปรปกติใน JS แต่ Rest arguments const [name, age] = ['James', '3'] console.log('success yeah!')
มีปัญหาคือทะลุ block scope function countNum(...num) { console.log(`name: ${name}`)
let x การประกาศตัวแปรใหม่ใน ES6 ที่ return`Count: ${num.length}` console.log(`age: ${age}`) }).catch(() => {
เป็นตัวแปรที่ไม่ทะลุ block scope แล้ว }
Backtick : เครื่องหมายขีดเฉียงที่ปุ่มตัวหนอน `
console.log(`age: ${age}`)
// finally จะทำงานหลังสุดทุกกรณี ไม่ว่าจะทำ then หรือ
console.log('My name is Pompam'.startsWith('name')) ถ้ามีตัวเดียวจะใส่หรือไม่ใส่ ( ) ครอบก็ได้ สร้าง Promise Promise.all([myTask1, myTask2, myTask3, myTask4,
console.log('My name is Pompam'.startsWith('My')) var myFunc = a => { myTask5, ..., myTask(n)]).then(() =>
return a * 100 let result = 'success'
// สร้าง Promise
repeat() - รีเทิร์น string ซ้ำตามจำนวนที่กำหนด
} // Promise ทุกตัว resolve
console.log(myFunc(5)) let myTask = new Promise((resolve, reject) => {
console.log('All task have been completed.')
// โค้ดที่ทำงานแบบ Asynchronous
console.log('My'.repeat(5)) if (result === 'success') {
แบบ Return ทันที // กรณีทำงานเสร็จส่งผลลัพธ์ด้วย resolve()
).catch(() =>
resolve('ok')
ถ้าไม่ใส่ { } จะ return ค่าที่ได้โดยอัตโนมัติ // มีตัวที่ reject
Function argument var myFunc = (a, b, c) => a + b + c
}
else {
console.log('Some task failed.')
console.log(myFunc(5, 6, 7)) )
// กรณี error ส่งด้วย reject()
Default arguments สร้างค่าตังต้้ นให้กับ function reject('error')
**หากตัวใดตัว reject จะไม่เข้าเงื่อนไข then ทุกกรณี**
หากไม่ใส่ Argument ลงไปในการเรียก function ค่าของ }
Argument ที่ใส่เข้าไปจะเป็นค่าที่เราประกาศไว้ })