ES6基本语法入门
一、用let代替var声明变量
ES5中,我们可以在代码中任意位置声明变量,甚至可以重写已经声明的变量,ES6引入了一个let关键字,它是新的var。
let language = 'javascript'; let language = 'zj'; //此处会报错 console.log(language);
因为同一作用域中let已经声明过了,所以再次声明会报错
二、常量
ES6还引入了const关键字,和let用法一样,唯一的区别就是,const变量是只读的
三、模板字符串拼接
用反引号拼接字符串
let language = 'javascript'; console.log(language); let lan = `此处写字符串 ${language}`; console.log(lan) //此处写字符串 javascript
只要把变量写在${}里面就好了;模板字符串也可以识别空格,可可以用于多行的字符串,再也不用写\n了。
四、箭头函数
let circle = (x) => { const PI = 3.14; let area = PI * r * r; return area; }
可以省略掉关键字function,如果函数只有一条语句,可以连关键字都省略掉
let circle2 = (x) => 3.14 * r * r;
五、函数参数的默认值
let sum = (x = 1, y = 2, z = 3) => x + y + z;
console.log(sum());
可以声明函数参数的默认值
六、声明展开和剩余参数
ES6展开操作符 ...
let params = [1,2,3]; console.log(...params); //1 2 3 let pro = { one:0, two:1, three:2, }; console.log({...pro}); //{ one: 0, two: 1, three: 2 }
七、数组解构
var [a, b] = ['x', 'y'];
以上代码和下面的代码效果是一样的
a = 'x';
b = 'y';
数组解构也可以进行值的互换
[x, y] = [y, x];
八、使用面向对象biancheng
//ES5语法 function Book (title, page, isbn) { this.title = title; this.page = page; this.isbn = isbn; } Book.prototype.printTitle = function () { console.log(this.title); };
//ES6语法 class Desk { constructor (title, pages, isbn){ this.title = title; this.page = page; this.isbn = isbn; } printIsbn () { console.log(this.isbn); } }
ES6只需要使用class关键字,声明一个有constructor函数和诸如printIsbn等其他函数的类;
我们可以用extends扩展一个类并继承它的行为
//ES6语法 class ITDesk extends Desk { constructor (title, pages, isbn){ this.title = title; this.page = page; this.isbn = isbn; } printIsbn () { console.log(this.isbn); } }
更多es6细节请看: http://es6.ruanyifeng.com/#docs/array
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 对象命名为何需要避免'-er'和'-or'后缀
· SQL Server如何跟踪自动统计信息更新?
· AI与.NET技术实操系列:使用Catalyst进行自然语言处理
· 分享一个我遇到过的“量子力学”级别的BUG。
· Linux系列:如何调试 malloc 的底层源码
· C# 中比较实用的关键字,基础高频面试题!
· .NET 10 Preview 2 增强了 Blazor 和.NET MAUI
· Ollama系列05:Ollama API 使用指南
· 为什么AI教师难以实现
· 如何让低于1B参数的小型语言模型实现 100% 的准确率