ဂျပန်ဘာသာ အက္ခရာ

ECMAScript 6 是什么?

ECMAScript 6 也称为 ES6 和 ECMAScript 2015。

一些人把它称作 JavaScript 6。

本章介绍 ES6 中的一些新特性。

  • JavaScript let
  • JavaScript const
  • 幂 (**)
  • ပြင်းပြင်းထန်ထန် အပြင်းအလိုက်
  • Array.find()
  • Array.findIndex()

对 ES6(ECMAScript 2015)的浏览器支持

Safari 10 和 Edge 14 是首先完全支持 ES6 的浏览器:

Chrome 58 Edge 14 Firefox 54 Safari 10 Opera 55
Jan 2017 Aug 2016 Mar 2017 Jul 2016 Aug 2018

JavaScript let

let အရာသည် အခြေခံ အပိုင်း အားပေးသော အမှတ်အသား နှင့် အတိုင်းအားကို အသုံးပြုနိုင်သည်。

实例

var x = 10;
// Here x is 10
{ 
  let x = 2;
  // Here x is 2
}
// Here x is 10

亲自试一试

JavaScript const

const အခြေခံအရ သုံးစွဲနိုင်သော အမှတ်အသား နှင့် အတိုင်းအားကို ပြန်လည်ပြောင်းလဲခြင်းမပြုနိုင်ပါ。

အခြေခံအရ သုံးစွဲနိုင်သော အမှတ်အသား နှင့် အတိုင်းအားကို ပြန်လည်ပြောင်းလဲခြင်းမပြုနိုင်ပါ。 let အမှတ်အသား နှင့် အတိုင်းအားကို အသုံးပြုနိုင်သော အခြေခံအရ အမှတ်အသား နှင့် အတိုင်းအားကို ပြန်လည်ပြောင်းလဲခြင်းမပြုနိုင်ပါ。

实例

var x = 10;
// Here x is 10
{ 
  const x = 2;
  // Here x is 2
}
// Here x is 10

亲自试一试

ကျွန်တော်တို့၏ JavaScript Let / Const အချိန်ပြန်လည် ဖတ်ရှုခြင်း let နှင့် const အရာ

အားပေးခြင်း ပြောင်းလဲခြင်း

အားပေးခြင်း ပြောင်းလဲခြင်း**)ပထမ အပိုင်းကို ဒုတိယ အပိုင်း၏ အားပေးသော ပြောင်းလဲခြင်းကို ထိန်းချုပ်သည်。

实例

var x = 5;
var z = x ** 2;          // အကျိုးသား 25

亲自试一试

x ** y အကျိုးသား ES6 အခြေခံအရ အသုံးပြုနိုင်သော အမှတ်အသား နှင့် အတိုင်းအားကို ပြန်လည်ပြောင်းလဲခြင်းမပြုနိုင်ပါ。

实例

var x = 5;
var z = Math.pow(x,2);   // အကျိုးသား 25

亲自试一试

ပြင်းပြင်းထန်ထန် အပြင်းအလိုက်

ES6 ပြင်းပြင်းထန်ထန် သုံးစွဲနိုင်သော အပြင်းအလိုက် ပြင်းပြင်းထန်ထန် သုံးစွဲနိုင်သည်。

实例

function myFunction(x, y = 10) {
  // y သည် 10 ဖြစ်ပါက သို့မဟုတ် undefined
  return x + y;
}
myFunction(5); // ပြန်တင်သည် 15

亲自试一试

Array.find()

find() စက်တင်ခြင်းသည် စမ်းသပ်ခြင်းသီချင်းမှ အဖွဲ့အစည်း၏ ပထမဆုံး အစိတ်အပိုင်း၏ အတိုင်းအားကို ပြန်တင်သည်。

အမှတ်အသားတစ်ခုကို ရှာဖွေသည် (တင်ပြသည်) ပထမဆုံး 18 ကျော်သော အစိတ်အပိုင်း (အတိုင်းအား) ကို :

实例

var numbers = [4, 9, 16, 25, 29];
var first = numbers.find(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

亲自试一试

သို့မဟုတ် အဆိုပါ အုပ်ချုပ်ရိုက် 3 ခု အပ်ချင်း လိုက်ပါ:

  • အကြောင်းအရာ အရင်း
  • အကြောင်းအရာ အလက်အာကွင်း
  • အသင်းကို

Array.findIndex()

findIndex() စက်တင်ခြင်းသည် စမ်းသပ်ခြင်းသီချင်းမှ အဖွဲ့အစည်း၏ ပထမဆုံး အစိတ်အပိုင်း၏ အတိုင်းအားကို တွေ့ရှိသော အရာတစ်ခုကို ပြန်တင်သည်。

အဆိုပါ အကြောင်းအရာ အခွင့်အရေး 18 ကျော် ဖြစ်သော ပထမ အကြောင်းအရာ အလက်အာကွင်း ကို ကိန်းသိမ်းပါ:

实例

var numbers = [4, 9, 16, 25, 29];
var first = numbers.findIndex(myFunction);
function myFunction(value, index, array) {
  return value > 18;
}

亲自试一试

သို့မဟုတ် အဆိုပါ အုပ်ချုပ်ရိုက် 3 ခု အပ်ချင်း လိုက်ပါ:

  • အကြောင်းအရာ အရင်း
  • အကြောင်းအရာ အလက်အာကွင်း
  • အသင်းကို

အသစ် အပိုင်းဆိုင်ရာ

ES6 တွင် Number အပိုင်းဆိုင်ရာ အခွင့်အရေး ထပ်ထည့်ပေးခဲ့သည်:

  • EPSILON
  • MIN_SAFE_INTEGER
  • MAX_SAFE_INTEGER

实例

var x = Number.EPSILON;

亲自试一试

实例

var x = Number.MIN_SAFE_INTEGER;

亲自试一试

实例

var x = Number.MAX_SAFE_INTEGER;

亲自试一试

အသစ် အပိုင်းဆိုင်ရာ

ES6 တွင် Number အပိုင်းဆိုင်ရာ 2 ခု အသစ် မူကွဲ ထပ်ထည့်ပေးခဲ့သည်:

  • Number.isInteger()
  • Number.isSafeInteger()

Number.isInteger() မူကွဲ

ပြင်းပြတ် ဖြစ်စေ Number.isInteger() 方法返回 true

实例

Number.isInteger(10);        // အပြီးအမြတ် true ပြန်ပေး
Number.isInteger(10.5);      // အပြီးအမြတ် false ပြန်ပေး

亲自试一试

Number.isSafeInteger() မူကွဲ

လုံလောက်သမျှ အစိတ်အပိုင်း သည် ဒီပတ်ဝန်းကျင် ကို တန်ဖိုးပေးနိုင်သော အစိတ်အပိုင်း ဖြစ်သည်。

ပြင်းပြတ်သမျှ သည် ဖြစ်စေ Number.isSafeInteger() 方法返回 true

实例

Number.isSafeInteger(10);    // အပြီးအမြတ် true ပြန်ပေး
Number.isSafeInteger(12345678901234567890);  // အပြီးအမြတ် false ပြန်ပေး

亲自试一试

လုံလောက်သမျှ အစိတ်အပိုင်း မှ -(253 - 1) မှ +(253 - 1) အထိ အစိတ်အပိုင်းများ ဖြစ်သည်。

သို့မဟုတ် လုံလောက်သည်: 9007199254740991. လုံလောက်မဟုတ်: 9007199254740992.

အသစ် အကွဲခွဲသမျှ

ES6 တွင် 2 ခု အသစ် အကွဲခွဲသမျှ ထပ်ထည့်ပေးခဲ့သည်:

  • isFinite()
  • isNaN()

isFinite() မူကွဲ

ပြင်းပြတ်သမျှသည် Infinity သို့မဟုတ် NaN,则全局 isFinite() မူကွဲ ပြန်ပေး false

အခြားအကြောင်းများအား အပြီးအမြတ် true ပြန်ပေး

实例

isFinite(10/0);       // အပြီးအမြတ် false ပြန်ပေး
isFinite(10/1);       // အပြီးအမြတ် true ပြန်ပေး

亲自试一试

isNaN() မူကွဲ

如果参数是 NaN,则全局 isNaN() 方法返回 true。否则返回 false

实例

isNaN("Hello");       // 返回 true

亲自试一试

箭头函数(Arrow Function)

箭头函数允许使用简短的语法来编写函数表达式。

您不需要 function 关键字、return 关键字以及花括号

实例

// ES5
var x = function(x, y) {
   return x * y;
}
// ES6
const x = (x, y) => x * y;

亲自试一试

箭头功能没有自己的 this。它们不适合定义对象方法

箭头功能未被提升。它们必须在使用进行定义。

使用 const 比使用 var 更安全,因为函数表达式始终是常量值。

如果函数是单个语句,则只能省略 return 关键字和花括号。因此,保留它们可能是一个好习惯:

实例

const x = (x, y) => { return x * y };

亲自试一试