当前位置: 首页 > news >正文

深圳html5网站开发搜索引擎大全网址

深圳html5网站开发,搜索引擎大全网址,技术优化seo,个人办公室装修效果图ECMASript是由 Ecma 国际通过 ECMA-262 标准化的脚本程序设计语言。javaScript也是该规范的一种实现。 新特性目录 笔记出处:b站ES6let 关键字const关键字变量的解构赋值模板字符串简化对象写法箭头函数rest参数spread扩展运算符Promise模块化 ES8async 和 await E…

ECMASript是由 Ecma 国际通过 ECMA-262 标准化的脚本程序设计语言。javaScript也是该规范的一种实现。

新特性目录

        • 笔记出处:b站
        • ES6
          • let 关键字
          • const关键字
          • 变量的解构赋值
          • 模板字符串
          • 简化对象写法
          • 箭头函数
          • rest参数
          • spread扩展运算符
          • Promise
          • 模块化
        • ES8
          • async 和 await
        • ES9
          • Rest/Spread属性

笔记出处:b站

尚硅谷Web前端ES6教程,涵盖ES6-ES11
阮一峰大佬的:ECMAScript 6 入门

ES6

let 关键字

使用let关键字声明变量的特点:

  1. 不允许重复声
  2. 块儿级别作用域
  3. 不存在变量提升
  4. 不影响作用域链
const关键字

const关键字用来声明常量,const声明由以下特点

  1. 声明必须赋初始值
  2. 标识符一般为大写
  3. 不允许重复声明
  4. 值不允许修改
  5. 块儿级作用域
变量的解构赋值

ES6允许按照一定的模式,从数组和对象中提取值,对变量进行赋值

	 //数组的解构赋值const arr = ['张学友', '刘德华', '黎明', '郭富城'];let [zhang, liu, li, guo] = arr;//对象的解构赋值const lin = {name: '林志颖',tags: ['车手', '歌手', '小旋风', '演员']};let {name, tags} = lin;
模板字符串

模板字符串(template string)是增强版的字符串,用反引号(`)标识,特点:

  1. 字符串中可以出现换行符
  2. 可以使用 ${xxx} 形式输出变量
	// 定义字符串let str = `<ul><li>沈腾</li><li>玛丽</li><li>魏翔</li><li>艾伦</li></ul>`;// 变量拼接let star = '王宁';let result = `${star}在前几年离开了开心麻花`;
简化对象写法

ES6 允许在大括号里面,直接写入变量和函数,作为对象的属性和方法。这
样的书写更加简洁。

let name = '尚硅谷';
let slogon = '永远追求行业更高标准';
let improve = function () {console.log('可以提高你的技能');
}
//属性和方法简写
let atguigu = {name,// 属性名和变量名相同可以简写slogon,// 属性名和变量名相同可以简写improve,// 属性名和函数变量名相同可以简写change() {// change:function(){}的简写方式console.log('可以改变你')}
};
箭头函数

ES6 允许使用「箭头」(=>)定义函数。

// 1. 通用写法
let fn = (arg1, arg2, arg3) => {return arg1 + arg2 + arg3;
}
// 2. 省略小括号的情况,只有一个参数
let fn2 = num => {return num * 10;
};
// 3. 省略花括号,省略花括号的同时要省略`return`
let fn3 = score => score * 20;
// 4. this指向2声明所在作用域中this的值
let fn4 = () => {console.log(this);//Windows
}
let school = {name: '尚硅谷',getName(){let fn5 = () => {console.log(this);// this指向school}fn5();}
};

箭头函数不会更改 this 指向,用来指定回调函数会非常合适

rest参数

ES6 引入 rest 参数,用于获取函数的实参,用来代替 arguments

// 类似java中的可变参数
function add(...args){console.log(args);
}
add(1,2,3,4,5);
// rest参数必须是最后一个形参,在其他参数都确定之后才是rest参数
function minus(a,b,...args){console.log(a,b,args);
}
minus(100,1,2,3,4,5,19);
spread扩展运算符

扩展运算符(spread)也是三个点(…)。它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列,对数组进行解包。在ES9之后也可对对象进行扩展

// 展开数组
let tfboys = ['德玛西亚之力','德玛西亚之翼','德玛西亚皇子'];
function fn(){console.log(arguments);// 输出不是数组对象而是,'德玛西亚之力', '德玛西亚之翼', '德玛西亚皇子'
}
fn(...tfboys)
// 展开对象
/**
* 展开对象
*/
let skillOne = { q: '致命打击',};
let skillTwo = { w: '勇气'};
let skillThree = { e: '审判'};
let skillFour = { r: '德玛西亚正义'};
let gailun = {...skillOne, ...skillTwo,...skillThree,...skillFour};
Promise

Promise 是 ES6 引入的异步编程的新解决方案。语法上 Promise 是一个构造函数,
用来封装异步操作并可以获取其成功或失败的结果.

	//实例化 Promise 对象const p = new Promise(function(resolve, reject){resolve(data);// 成功时使用这个方法reject(err);// 失败时使用这个方法});//调用 promise 对象的 then 方法p.then(function(value){// then后面的第一个函数是成功的回调,第二个函数是失败时的回调console.log(value);}, function(reason){console.error(reason);})// 程序发生错误的时候调用p.catch(function(reason){console.warn(reason);});
模块化

模块化是指将一个大的程序文件,拆分成许多小的文件,然后将小文件组合起来。
好处:

  1. 防止命名冲突
  2. 提高代码复用
  3. 增强维护性,出问题只需要调整对应模块即可

模块化功能主要由两个命令构成:

  • export 命令用于规定模块的对外接口
  • import 命令用于输入其它模块提供的功能
// 在m1.js中导出// 分别暴露export let school = '尚硅谷';export function teach() {console.log("我们可以教给你开发技能");}// 统一暴露export {school, teach};// 默认暴露export default {school: 'ATGUIGU',change: function(){console.log("我们可以改变你!!");}}
// 在app.js中使用import {school, teach} from "./src/js/m1.js";// 针对默认暴露可以这样写import m1 from "./src/js/m1.js";

ES8

async 和 await

async 和await 目的是为了简化promise中api的使用,两种语法结合可以让异步代码和同步代码一样。
解决回调地狱问题

async函数

async 函数的返回值为 promise 对象
promise 对象的结果由 async 函数执行的返回值决定

await 函数

  1. await 必须写在 async 函数中
  2. await 右侧的表达式一般为 promise 对象
  3. await 返回的是 promise 成功的值
  4. await 的 promise 失败了, 就会抛出异常, 需要通过 try…catch 捕获处理
async function main() {try {let result = await p;console.log(result);} catch (e) {console.log(e);}}

ES9

Rest/Spread属性

Rest 参数与 spread 扩展运算符在 ES6 中已经引入,不过 ES6 中只针对于数组,
在 ES9 中为对象提供了像数组一样的 rest 参数和扩展运算符

function connect({host, port, ...user}) {console.log(host);console.log(port);console.log(user);// 可以直接将后三个参数封装到user中
}
connect({host: '127.0.0.1',port: 3306,username: 'root',password: 'root',type: 'master'
});
http://www.yayakq.cn/news/827730/

相关文章:

  • 网站建设预算明细手机网站的页面大小
  • 上海建筑网站设计加强纪检监察网站建设
  • 商城网站制作需要多少费用网站互联网接入商
  • 株洲建设网站制作硅云wordpress多站点
  • 公司网站规划科技公司简介范文
  • 做一家仓储用地的网站河北住房与建设信息网站
  • 手机网站建设怎么样上传网站空间的建站程序怎么删除
  • 唐山做网站的电话wordpress wplang
  • 网站建设亿金手指花总12台州外贸网站
  • 廊坊网站建设招聘手机推广app
  • 网站建设费用一年平原网站建设电话
  • 如何建设淘客网站秀米h5页面怎么制作
  • 做现货需要关注的网站好孩子官方网站王建设
  • 网站建设要经历哪些步骤?特色的重庆网站推广
  • 怎样制作自己网站制作网站的设计难点
  • 误入网站退不了怎么做备案信息查询系统
  • 企业建设网站需要服务器吗建设银行信用卡管理中心网站首页
  • 网站改版汇报什么是seo搜索优化
  • 调整网站模板大小国内最好的少儿编程机构排名
  • 百度网站推广价格查询电子商务营销模式
  • 做百度手机网站优湘潭网站建设 磐石网络擅长
  • 怎样找到黄页网站聊城市网站制作
  • 北京网站建设新闻办公室装修方案
  • 合肥网站建设-中国互联网络服务器配置
  • 免费素材网站可商用一建报考条件
  • 如果做自己的网站长沙商城网站
  • 番禺哪里有做网站的公司网页开发工具怎么打开
  • 搭建网站工具app推广活动策划方案
  • 阿里巴巴国际站运营教程WordPress付费下载源码
  • 口碑好企业网站建设mv网站源码