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

网站建设和网站开发的区别外链大全

网站建设和网站开发的区别,外链大全,个人备案网站可以做淘宝客吗,石家庄疫情最新新闻文章目录 前端知识点---rest(javascript)rest的用法基本语法特点使用场景与扩展运算符(spread)区别小练习 前端知识点—rest(javascript) rest出现于ES2015 function doSum(a,b, ...args) //示例中的args就是一个rest参数 //它会将后续的所有参数存储…

文章目录

  • 前端知识点---rest(javascript)
  • rest的用法
    • 基本语法
    • 特点
    • 使用场景
    • 与扩展运算符(spread)区别
    • 小练习

前端知识点—rest(javascript)

rest出现于ES2015

function doSum(a,b, ...args)
//示例中的args就是一个rest参数 
//它会将后续的所有参数存储在名为args的数组中 

在rest出现之前 还有一个东西叫arguments

但是arguments存在一些问题

  • 松散模式下的性能问题
    arguments和实参是双向绑定的 ,就是说 , 修改实参argument会发生变化 , 修改arguments 实参也会发生变化 ,arguments和实参的同步就带来了性能问题 ,严格模式下arguments和实参没有双向绑定就没有性能问题
    arguments包含了所有的参数 , 这意味着要为所有的参数计算索引 , 才能获取
  • 参数没名字
    必须是arguments加索引的方式访问所有参数
  • 箭头函数不能用
  • 不是数组

rest的用法

rest 参数用于将不定数量的参数组合成一个数组。它在函数定义中使用,方便处理函数接收的多个参数,尤其是当参数数量不确定时。

基本语法

使用三个点(…)表示 rest 参数,语法如下:

function myFunction(...args) {console.log(args); // args 是一个数组
}myFunction(1, 2, 3, 4, 5); // 输出:[1, 2, 3, 4, 5]

特点

  • 收集剩余参数:
    rest 参数将从指定位置开始的所有剩余参数收集到一个数组中。

  • 只能是最后一个参数:
    rest 参数必须是函数的最后一个参数。

function example(a, b, ...rest) {console.log(a);    // 第一个参数console.log(b);    // 第二个参数console.log(rest); // 剩余参数,作为数组
}
example(1, 2, 3, 4, 5); 
// 输出:
// 1
// 2
// [3, 4, 5]
不能混用多个 rest 参数:
一个函数中最多只能有一个 rest 参数,并且它必须在最后。

使用场景

  1. 替代 arguments 对象
    传统上可以通过 arguments 对象访问函数中的所有参数,但它不是一个真正的数组,使用起来不如 rest 参数方便。
function oldWay() {console.log(arguments); // arguments 是类数组对象
}function newWay(...args) {console.log(args); // args 是真正的数组
}oldWay(1, 2, 3); // 输出:{ '0': 1, '1': 2, '2': 3 }
newWay(1, 2, 3); // 输出:[1, 2, 3]
  1. 简化不定参数函数
    比如计算任意数量数字的总和:
function sum(...numbers) {return numbers.reduce((total, num) => total + num, 0);
}console.log(sum(1, 2, 3, 4)); // 输出:10
  1. 配合解构赋值
    在对象或数组解构时,rest 参数也非常有用:
// 数组解构
const [first, second, ...rest] = [1, 2, 3, 4, 5];
console.log(first);  // 输出:1
console.log(second); // 输出:2
console.log(rest);   // 输出:[3, 4, 5]// 对象解构
const { a, b, ...others } = { a: 1, b: 2, c: 3, d: 4 };
console.log(a);       // 输出:1
console.log(b);       // 输出:2
console.log(others);  // 输出:{ c: 3, d: 4 }

与扩展运算符(spread)区别

Rest 参数(rest):用于“收集”不定数量的参数或元素,形成一个数组。
扩展运算符(spread):用于“展开”数组或对象,将其元素作为独立值。

function display(...args) {console.log(args); // 收集参数为数组
}const nums = [1, 2, 3];
display(...nums); // 展开数组元素传入
// 输出:[1, 2, 3]

小练习

以下代码输出什么?

function display(a, b, ...rest) {console.log(a);console.log(b);console.log(rest);
}display(10, 20, 30, 40, 50);

答案:
10
20
[30, 40, 50]

http://www.ds6.com.cn/news/90366.html

相关文章:

  • 做网站常用软件seo优化软件大全
  • 做网站宽度和长度布局怎么建自己的网站?
  • 建建建设网站关键词查询爱站网
  • 网站注册费计入什么科目精准营销案例
  • 营销型网站开发推广电商的运营模式有几种
  • 用qt做网站可以吗政府免费培训面点班
  • 如何自己建设电影网站seo排名赚app官网
  • 想建设网站app推广注册放单平台
  • wordpress seo技巧安卓系统优化大师
  • 湖南做网站 就问磐石网络专业免费男女打扑克的软件
  • 做网站包括什么条件做网上推广
  • 网站改版升级方案东莞企业推广网站制作
  • 网站主机选择百度推广售后
  • 中国人民银行网站打不开线上宣传推广方式
  • wordpress 企业整站seo公司资源
  • 个人身份调查网站最近新闻大事件
  • 怎么做纪念网站求好用的seo软件
  • wordpress做知识管理系统seo网络推广优化教程
  • 商丘交友网站开发公司百度收录量
  • 网站最新点击量排名快速排名优化
  • c#网站开发需要的技术江西seo推广软件
  • 湘潭哪里做网站互联网推广运营是做什么的
  • 做海外市场什么网站推广郑州seo优化服务
  • 建行信用卡网站登录百度公司总部在哪里
  • 上海企业建站费用宁波搜索引擎优化seo
  • 未备案网站通知2022年每日新闻摘抄10一30字
  • 科技部网站建设合同营销推广软文案例
  • 便宜网站建设价格黑帽seo优化软件
  • 文章网站的一级二级怎么做西安疫情最新通知
  • 谁做视频网站公司做网页要多少钱