node 6 ES5 6的語法相關

2021-09-29 19:30:46 字數 2571 閱讀 2965

示例**:

// 1. es3

function human(name, age)

human.prototype.show = function();

var h = new human('lili', 18); // 建立乙個human的例項

h.show(); // lili 18

// 2. es3-5繼承:通過原型進行繼承。

// 3. es6中定義型別和繼承的方式

// es6中定義型別和建構函式:

// ps:類名要符合識別符號的規範。

class student

constructor(name, age)

// 在類裡定義的方法都是在原型上,注意:不可遍歷。

showstu()

}// 建立型別的例項,通過class定義的型別,必須通過new來構造例項。

let s = new student('adrx', 12);

s.showstu(); // adrx 12

// es5中 get 和 set

function stu(name)

stu.prototype = ,

set name(val)

}};var s = new stu("lili");

console.log(s.name); // lili

s.name = '';

console.log(s.name); // lili

s.name = 'sfa';

console.log(s.name); // sfa

// es6中定義型別和建構函式:

// ps:類名要符合識別符號的規範。

class student

constructor(name, age)

// 在類裡定義的方法都是在原型上,注意:不可遍歷。

showstu()

get name()

set name(val)

}// 建立型別的例項,通過class定義的型別,必須通過new來構造例項。

let s = new student('adrx', 12);

s.showstu(); // adrx 12

console.log(s.name); // adrx

s.name = 'gire';

console.log(s.name); // gire

s.name = '';

console.log(s.name);

// es6

class human

show()

}class student extends human

stushow()

}let s = new student('adf', 12, '056');

s.stushow(); // name: adf, age: 12, classnum: 056

s.show(); // name: adf, age: 12

引數 => 函式體

示例**:

// 引數 => 函式體

// 乙個引數

var f = a => ++a;

console.log(f(1)); // 2

// 多個引數

var f = (a, b) => a + b;

console.log(f(1, 2)); // 3

// 多條語句的時候 ({}裡是語句塊)

var sum = (num1, num2) => ;

console.log(sum(1,2)); // 5

var t = ()=>;

t(); // {}

// 示例demo

let add = function(a, b);

console.log(add(4, 5)); // 9

let addarrowfunc = (a, b) => a + b;

console.log(addarrowfunc(3, 4)); // 7

var arr = [3, 1, 5, 3];

arr.sort((a, b)=> a-b);

console.log(arr); // [ 1, 3, 3, 5 ]

ps:

函式體內的this物件,就是定義時所在的物件,而不是使用時所在的物件。

不可以當做建構函式,也就是說,不可以使用new命令,否則會丟擲乙個錯誤。

不可以使用arguments物件,該物件在函式體內不存在,如果要用,可以用rest引數代替。

不可以使用yield命令,因此箭頭函式不能用作generator函式。

箭頭函式不能用bind繫結this。

將一段**進行摺疊:

展開運算子 :  「...」

ES6的相關語法

es6的相關語法 let,const與var關鍵字宣告變數有什麼區別 1.const宣告的是常量,一經宣告不允許改變。2.const和let都有塊級作用域的概念,而非函式作用域。3.const和let都不存在變數提公升的操作。4.let有暫時性死區的特性,如果在某個作用域中使用let關鍵字宣告了變數...

Node 2 ES6 新增語法特性

var 關鍵字 a.存在變數提公升 console.log score var score 99 b.函式作用域 for var i 0 i 10 i console.log i c.可重新宣告 var score 98 console.log score d.可重新賦值 score 97 cons...

OC中的Block 塊語法 相關知識

block的資料型別格式 返回值型別 引數型別1 引數名1,引數型別2 引數名2,注 1.沒有引數 括號不能省略 2.引數名可以省略,特殊情況下,為了方便使用,不省略 block賦值 實現 格式 資料型別1 引數名,資料型別2 引數名2,注 1.引數名不能省略 2.如果block有返回值,需要使用r...