示例**:
// 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...