标签: es6 javascript


箭头函数

ES6为了书写方便引入了函数的全新简写方式-箭头函数

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<script>
//es5完法
var show0 = function(str){
console.log(str);
}
//es6写法
let show1 = (str)=>{
console.log(str);
}
show0('这是测试0!');
show1('这是测试1!');
</script>
</body>
</html>

测试地址

箭头函数的一些特性

  • 当只有一个参数的时候可以省略括号
  • 当只有一个return语句的时候,大括号和return可以省略
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<script>
let show0 = (str)=>{
console.log(str);
}
//省略括号
let show1 = str=>{
console.log(str);
}
let show2 = (str)=>{
return str
}
//省略括号与中括号和return语句
let show3 = str=>str;
show0('测试0!');
show1('测试1!');
console.log(show2('测试2!'));
console.log(show3('测试3!'));
</script>
</body>
</html>

测试地址

参数的变化

-参数的扩展/数组展开(...)

-默认参数

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>函数参数变化</title>
</head>
<body>
<script>
//收集余下参数并展开使用,...args必须放么最后,收集余下的所有可能的参数
function show(a,b,...args){
console.log(a,b,...args);
}
show(1,2,5,6);
//展开数组
let arr0=[1,2,3];
let arr1=[4,5,6];
let arr =[...arr0,...arr1];
console.log(arr);
//默认参数,当b/c没有传入值时取默认值,如果有传入则取传入值
function show0(a,b=1,c=2){
console.log(a,b,c);
}
show0(0);
</script>
</body>
</html>

测试地址

粗看ES6之函数的更多相关文章

  1. 粗看ES6之数组

    标签: javascript es6 数组新增方法 map(可以理解为是映射,以一定规则修改数组每一项并返回全新数组) reduce(可以理解为是汇总,一堆出来一个) filter(可以理解为过滤,筛 ...

  2. 粗看ES6之变量

    标签: javascript var定义变量面临的问题 可以重复定义 无法限制变量不可修改 无块级作用域 ES6变量定义升级 新增let定义变量 新增const定义常量 let特性 有块级作用域 不可 ...

  3. 粗看ES6之面向对象写法

    标签: es6 在es6以前,js没有类的概念,虽然有构造函数原型的方式用来做面向对向开发,但是对于书法并不是十分友好,而且对于继承实现也不是十分友好. es6引入class constructor ...

  4. 粗看ES6之JSON

    标签: es6 ES6新增JSON特性不是特别多,只是针对JSON某些情况下的写法上有一些优化: 当key值和value值对应变量名相同时 json对像中的方法书写 示例代码如下: <!DOCT ...

  5. 粗看ES6之字符串

    标签: javascript es6 字符串新增特性 新增二个方法 - startsWith/endsWith 字符串模板 - 反单引号的应用 startsWith 判断字符串以是否以某某开头,返回一 ...

  6. 粗看ES6之解构赋值

    标签: javascript es6 什么是解构赋值? 示例如下: <!DOCTYPE html> <html> <head> <meta charset=& ...

  7. 新手必看ES6基础

    ES6 基础 一.新的变量声明方式 let/const 与var不同,新的变量声明方式带来了一些不一样的特性,其中最重要的两个特性就是提供了块级作用域与不再具备变量提升. 通过2个简单的例子来说明这两 ...

  8. ES6 — 箭头函数

    一 为什么要有箭头函数 我们在日常开发中,可能会需要写类似下面的代码 const Person = { 'name': 'little bear', 'age': 18, 'sayHello': fu ...

  9. 前端分享----JS异步编程+ES6箭头函数

    前端分享----JS异步编程+ES6箭头函数 ##概述Javascript语言的执行环境是"单线程"(single thread).所谓"单线程",就是指一次只 ...

随机推荐

  1. P4177 [CEOI2008]order 最小割

    \(\color{#0066ff}{ 题目描述 }\) 有N个工作,M种机器,每种机器你可以租或者买过来. 每个工作包括若干道工序,每道工序需要某种机器来完成,你可以通过购买或租用机器来完成. 现在给 ...

  2. 给花_Q

  3. kuangbin专题十二 HDU1176 免费馅饼 (dp)

    免费馅饼 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  4. Experimental Educational Round: VolBIT Formulas Blitz K

    Description IT City company developing computer games decided to upgrade its way to reward its emplo ...

  5. Java使用Array类创建多维数组

    1.创建一维数组 import java.lang.reflect.Array; public class ArrayTest { public static void main(String[] a ...

  6. Linux中apache服务

    httpd访问控制生成共享文件vim var/www/html/cq/index.html编辑配置文件 vim /etc/httpd/conf/httpd.conf<Directory &quo ...

  7. iOS自动化测试的那些干货

    前言 如果有测试大佬发现内容不对,欢迎指正,我会及时修改. 大多数的iOS App(没有持续集成)迭代流程是这样的 也就是说,测试是发布之前的最后一道关卡.如果bug不能在测试中发现,那么bug就会抵 ...

  8. spring session使用日志

    请求进入和退出时,filter触发session的提取和保存   getAttribute时会查询数据库 setAttribute会保存到数据库 daemond线程定时自动删除过期的session s ...

  9. 【ACM】无聊的小明

    无聊的小明 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述       这天小明十分无聊,没有事做,但不甘于无聊的小明聪明的想到一个解决无聊的办法,因为他突然对数的正 ...

  10. 解决WebStorm/PyCharm/IDEA卡顿的问题

    问题 webstorm强大的功能就不多做介绍了.但是它的缺点也显而易见:吃内存. 电脑配置稍低一点,运行webstorm就特别容易卡顿,特别是项目比较大的时候,那卡顿得不要不要的. 在我的PC机32g ...