首页 > 代码库 > react配置之浅谈
react配置之浅谈
//复习 1 .块级作用域 let 和const 2 变量结构 默认值 一般往后写 rest参数(了解) 箭头函数(重要)(x,y)=>{} 3.map 存储高级键值对 4.set集合(去重) //集合内不存在重复 //es5 es6 console.log(‘----------------start----------------‘); //1.块级作用域 //{ // let a; //} // let 和 const 命令 // var声明变量放弃使用 //let 声明变量(node.js) var a = 1; { var a = 2; var b = 4; console.log(a); } console.log(a); let f = 1; { let f = 2; let g = 4; } console.log(f); //等号左右结构一致可以赋值 let[a1,a2,a3]=[1,2,3]; console.log(a1+"---"+a2+"---"+a3); const 声明常量 const c=5; console.log(c); let person={ name:‘guodongsheng‘, age:‘21‘ }; let{name,age}=person; console.log("姓名:"+name+‘年龄:‘+age); 4 函数扩展 给函数加默认值 怎么样给x设置一个默认值 function test1(x=1) { console.log(x); } test1(); test1(100); 函数参数的个数不确定 如何初始化 function addNumbers(...values) { let sum = 0; for (let v of values) { sun += v; } return sum; } console.log(addNumbers(1,2,3)); console.log(addNumbers(1,2,3,4)); 4.1 箭头函数 let func=(x,y) => { return x + y; } function comPute(x,y,f) { return f(x,y); } //let s=comPute(1,3, (x, y) => { return x + y; }) let s=comPute(1,3,func) console.log(s); 5 数据结构--map let m = new Map();//键值对 存储键值对 let person={ name:‘guodongsheng‘, age:‘21‘ }; // map和js对象都是存储键值对 但js对象的key只能是string 但map对象的key可以是任意 let teacher= { name:‘xuying‘, tel:‘2222‘ } m.set(person,teacher); console.log(m); 集合 没有重复 没有顺序 let s = new Set(); s.add(1); s.add(1); s.add(2); s.add(2); console.log(s); //6 class 属性 方法 //属性不需要定义直接使用 //方法需要声明 class student { // 构造函数 constructor 当对象创建的时候 自动调用 constructor constructor constructor constructor() { //1 调用父类的constructor 如果有父类 super(); //2设置属性初始值 this.name=‘‘;//什么都不写为空 不分配的话是undefined //3 绑定自身函数 this.SayHello=this.SayHello.bind(this); } SayHello(){ console.log(‘my name is ‘+this.name); }; } let s =new student(); s.name="guodongsheng";//属性不需要定义 s.SayHello(); console.log(s.name); // 7.继承关系 extends class xiaoming extends student//类 { constructor() { //1 调用父类的constructor 如果有父类 super(); super(); //2设置属性初始值 this.name=‘xiaomingxiaoming!!!‘;//什么都不写为空 不分配的话是undefined //3 绑定自身函数 this.SayHello=this.SayHello.bind(this); } //开启异步 start(callback){ this.callback=callback; setTimeout(this.end.bind(this)); } end(){ console.log(‘end‘); if(this.callback) { this.callback(); } } } let t=new xiaoming(); t.start(()=>{ console.log(‘finish‘); }); //箭头函数 //创建对象 let t =new xiaoming(); //t.name=‘xiaoming‘; t.age=18; t.SayHello(); //8.异步操作 callback(); Promise class DoTaskPromise { start(){ console.log(‘Promise start‘); let promise=new Promise((resolev,reject)=>{ setTimeout(()=>{ resolev(); },20000) }) return promise; }; } let u=new DoTaskPromise(); u.start().then(()=>{ console.log(‘Promise end‘); }); class DoTask { //开启异步 start(callback){ console.log(‘callback start!!!‘); this.callback=callback; setTimeout(this.end.bind(this),10000); } end(){ console.log(‘callback end!!!‘); if(this.callback) { this.callback(); } } } let v=new DoTask(); v.start(()=>{ console.log(‘callback finish!!!‘); });
//8.异步操作 callback(); Promise class DoTaskPromise { start(){ console.log(‘Promise start‘); let promise=new Promise((resolev,reject)=>{ setTimeout(()=>{ resolev(); },20000) }) return promise; }; } let u=new DoTaskPromise(); u.start().then(()=>{ console.log(‘Promise end‘); }); class DoTask { //开启异步 start(callback){ console.log(‘callback start!!!‘); this.callback=callback; setTimeout(this.end.bind(this),10000); } end(){ console.log(‘callback end!!!‘); if(this.callback) { this.callback(); } } } let v=new DoTask(); v.start(()=>{ console.log(‘callback finish!!!‘); });
本人第一次写博客,以上内容全来自己手写,如果想交流可以加入:石家庄ReactNative交流群 526955818
react配置之浅谈
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。