ECMA2015(ES6)简单入门-3-迭代器-生成器-定义类-__静态方法__继承
来源:互联网 发布:富豪 知乎 编辑:程序博客网 时间:2024/06/14 06:25
自定义迭代器
// {value: xx,done: true/false}
function chef(foods){
let i=0;
return {
next(){
let done =(i>=foods.length),
value= !done ?foods[i++]:undefined;
return {
value:value,
done:done
}
}
}
}
let qiao =chefs([“apple”,”apple1”]);
console.log(qiao.next());
//generators
// 定义生成器
function* chefs(){
yield “apple”;
yield “apple2”;
}
let wang=chefs();
console.log(wang.next());
console.log(wang.next());
console.log(wang.next());
console.log(“……………………………….”)
let wang_1=chefs_1([“apple”,”apple1”]);
console.log(wang_1.next());
console.log(wang_1.next());
console.log(wang_1.next());
//定义一个类
class chef_class{
//属性方法
// 基于这个类创建实例之后会
// 自动执行这个constructor这个方法
//可以把初始化的东西放到里面,让方法接受参数
constructor(food){
this.food=food;
};
cook(){
console.log(
this.food
)
};
}
let qiao_1=new chef_class(“egg”);
qiao_1.cook();
//类里面可以定义get和let get就是可以得到东西set可以设置东西
class chef_t{
//属性方法
// 基于这个类创建实例之后会
// 自动执行这个constructor这个方法
//可以把初始化的东西放到里面,让方法接受参数
constructor(food){
this.food=food;
this.dish = [];
};
get menu(){ return this.dish};set menu(dish){ this.dish.push(dish)};
static cooks(food){
console.log(food)
}
}
let qiao_t=new chef_t();
console.log(qiao_t.menu=”egg1”);
console.log(qiao_t.menu=”egg2”);
console.log(qiao_t.menu);
// 类里面可以添加静态的方法static=>不需要实例化类就可以直接使用的方法
chef_t.cooks(“apple”);
//一个来可以继承其他类里面的东西
class Person {
constructor(name,birthday){
this.name=name;
this.birthday=birthday;
}
intro () {
return
${this.name},${this.birthday}
}
}
class anthor extends Person{
constructor(name,birthday){
super(name,birthday)
}
}
let qiao_x=new anthor(“qiaorui”,”1991-10”);
console.log(qiao_x.intro())
- ECMA2015(ES6)简单入门-3-迭代器-生成器-定义类-__静态方法__继承
- ECMA2015(ES6)简单入门-2-参数默认-...-解构参数-__proto__
- __
- ECMA2015(ES6)简单入门-1-let块-恒量const-解构-字符串模板
- ECMA2015(ES6)简单入门-4-set&get-map-moudle-import-export default
- ECMAScript6(ES6)标准之class类的定义、继承及静态方法
- python类内部 "__*__" 方法的作用
- 黑马程序员__静态
- iOS __静态库
- [WPF基础入门][3]__基元素
- 类的__str__()和__repr()__方法
- 黑马程序员__继承机制
- C++__继承和派生
- VC++常用方法__简单的进程列举
- VC++常用方法__简单的进程列举
- 宏定义中的‘#’、‘##’操作符和‘...’、‘ __变参__ ’
- 宏定义中的‘#’、‘##’操作符和‘...’、‘ __变参__ ’
- 宏定义中的‘#’、‘##’操作符和‘...’、‘ __变参__ ’
- advanced-tensorflow
- UVA 264 CD (01背包+输出路径)
- 图论500题
- django启动的时候报错RuntimeError: maximum recursion depth exceeded in cmp
- Python之路_Day 1
- ECMA2015(ES6)简单入门-3-迭代器-生成器-定义类-__静态方法__继承
- JInternalFrame的使用
- Java sdut acm 1791 集合相等问题
- Eclipse转IDEA(mac)
- SQL小结
- 剑指offer题一
- 哈希表知识梳理
- IP地址-子网-网关
- 有问题的C语言代码