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

Js:ES6~ES11基础语法(一)

一、let变量声明以及const定义常量

let变量声明

特点:

1) 变量不能重复声明

2) 块级作用域

3) 不存在变量提升

4) 不影响作用域链

const定义常量

特点:

1) 一定要赋初始值

2) 一般常量使用大写(默认潜规则)

3) 常量值不能修改

4) 块级作用域

5) 对于数组和对象的元素修改,不算对常量的修改,不会报错

二、变量的解构赋值

定义: ES6允许按照一定模式从数组和对象中提取值,对变量进行赋值,这被称为解构赋值.

1、数组的解构

2、对象的解构

三、模板字符串

定义: ES6引入新的声明字符串的方式

特点:

1) 声明

let str = `1233`;

2) 内容中可以直接出现换行符

3) 变量拼接使用${}

let loveset = 'Amumu'; let out = `${lovest}是最帅的`;

四、简化对象写法

定义: ES6允许在大括号里面,直接写入变量和函数,作为对象对属性和方法

五、箭头函数

定义: ES6 允许使用箭头(=>)定义函数

特点:

1) this是静态的,this始终指向函数声明时所在作用域下的this的值

2) 不能作为构造函数实例化对象

3) 不能使用arguments变量

4) 箭头函数的简写

a、省略小括号,当形参有且只有一个的时候

b、省略花括号,当代码体语句只有一条语句的时候,此时return必须省略,而且语句的执行结果就是函数的返回值

注意:

1) 箭头函数适合与this无关的回调,定时器,数组的方法回调

2) 箭头函数不适合与this有关的回调,例如: 事件回调、对象的方法

// 1.this是静态的,this始终指向函数声明时所在作用域下的this的值 function getName() { console.log(this.name) } let getName2 = () => { console.log(this.name) } window.name = '123' const school = { name: 'school' } getName.call(school) // school getName2.call(school) // 123

六、函数参数的默认值

定义: ES6允许函数参数赋值初始值

1) 形参初始值,具有默认值的参数,一般位置要靠后(默认情况)

2) 与解构赋值结合

//ES6 允许给函数参数赋值初始值 //1. 形参初始值 具有默认值的参数,一般位置要靠后(潜规则) function add(a,c=10,b) { return a + b + c; } let result = add(1,2); console.log(result); // NaN //2. 与解构赋值结合 function connect({host="127.0.0.1", username,password, port}){ console.log(host) // test.com console.log(username) //root console.log(password) // root console.log(port) // 3306 } connect({ host: 'test.com', username: 'root', password: 'root', port: 3306 })

七、rest参数

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

注意: rest参数必须放到参数最后

// ES6 引入 rest 参数,用于获取函数的实参,用来代替 arguments // ES5 获取实参的方式 function date(){ console.log(arguments); // ['白芷','阿娇','思慧'] } date('白芷','阿娇','思慧'); // rest 参数 function date(...args){ console.log(args);// ['白芷','阿娇','思慧'] filter some every map } date('阿娇','柏芝','思慧'); // rest 参数必须要放到参数最后 function fn(a,b,...args){ console.log(a); // 1 console.log(b); // 2 console.log(args); // [3, 4, 5, 6] } fn(1,2,3,4,5,6);
http://www.cnnetsun.cn/news/1453583.html

相关文章:

  • 从零实现一个C++多进制计算器:蓝桥杯常见指令解析与避坑指南
  • MCP是如何走下神坛的?
  • EI会议征稿!SPIE出版 | 2026年机器视觉、检测与三维成像技术国际学术会议(MVDIT 2026)
  • 传送带突然加速?PLC程序员的翻车现场
  • Keyviz深度探索:你的数字操作轨迹可视化利器
  • 收藏!AI大模型时代9大新兴岗位全景(小白/程序员必看,附转型指南+薪资前景)
  • 血管分割中的直径平衡难题:从clDice到cbDice的演进与实践
  • 中国生态保护综合区划矢量数据集和|生态敏感区·自然保护区·保护区级别·生态功能服务·自然地域分区
  • 【数据集】企业绿色债券相关数据集(2014-2025年)
  • Qwen3-ASR-1.7B实时字幕系统:视频会议语音实时转文字
  • 中断原子操作问题
  • 腰腿痛反复不好?可能不是腰肌劳损,而是腰椎间盘突出
  • 模型对比:LiuJuan20260223Zimage v1.0与主流文生图模型在国风题材上的效果差异
  • 娜塔莉·波特曼出演蒂芙尼的“HardWear”系列广告片
  • 这个会跳舞的小车有点东西——用MATLAB玩转倒立摆
  • 2026 年 3 月贵金属重挫:四大关键动因全面解读
  • 如何高效解密网易云音乐NCM文件:ncmdump完整使用指南
  • 机器人+视觉联动避坑指南:12个产线级常见问题,从标定失败到漏检全解决
  • Java Bean数据校验实战指南,Spring——事务的传播性。
  • C语言开发者也能用的AI模型:通过HTTP API调用BERT文本分割
  • kukuqaq | 一站式音乐聚合工具 搜索试听下载
  • Qt5.15.2 + MinGW32位环境配置libusb静态库(.a)全流程:从源码编译到项目集成
  • 三色排序:荷兰国旗最优解,sql题目基础50题。
  • Z-Image-Turbo-辉夜巫女Gradio性能压测:单卡支持最大并发数与平均响应时间
  • 黑客的隐秘武器:SQL注入与防御全攻略
  • 零代码自动化:OpenClaw+ollama-QwQ-32B快速搭建个人RSS阅读器
  • 终极指南:3分钟快速上手docx2tex,免费将Word文档转换为专业LaTeX
  • Appium 全解|博客视角:从架构、实战到企业级落地,移动端自动化测试的 “瑞士军刀”
  • 基于Python的社区老人健康信息管理系统毕业设计
  • 3张RTX 4090显卡也能玩转Qwen-Image?手把手教你低成本部署阿里最强开源文生图模型