es6解构赋值

news/2024/7/10 22:55:19 标签: es6

定义:

解构赋值就是从目标对象或数组中提取自己想要的变量。最常用的场景是:element-ui,vant-ui按需引入,请求接口返回数据,提取想要数据。

语法:

//数组结构
var a, b, rest;
[a, b] = [10, 20];
console.log(a); // 10
console.log(b); // 20

//对象解构
({ a, b } = { a: 10, b: 20 });
console.log(a); // 10
console.log(b); // 20

// ...rest 解构数组
[a, b, ...rest] = [10, 20, 30, 40, 50];
console.log(a); // 10
console.log(b); // 20
console.log(rest); // [30, 40, 50]

// ...rest 解构对象(最新)
({a, b, ...rest} = {a: 10, b: 20, c: 30, d: 40});
console.log(a); // 10
console.log(b); // 20
console.log(rest); // {c: 30, d: 40}

//解析一个从函数返回
function f() {
  return [1, 2];
}

var a, b; 
[a, b] = f(); 
console.log(a); // 1
console.log(b); // 2

默认值

var a, b;

[a=5, b=7] = [1];
console.log(a); // 1
console.log(b); // 7

交换变量

var a = 1;
var b = 3;

[a, b] = [b, a];
console.log(a); // 3
console.log(b); // 1

运算符的分类

        算术运算符

            +   -   *  / %   ++   --

        比较运算符

            > <  >=  <= !=     ==   !==   ===

        问:=   ==   ===的作用(区别)

          =  表示赋值 ,就是把等号右边赋值给等号左边的变量

          == 表示比较,如果两边的值相等,返回true,否则返回false,忽略数据类型

          === 表示比较 两边的值和数据类型都相同时,返回true,否则返回false

        赋值运算符

        =  +=   -=   *=  /=  %=

        a+=b   等价于   a = a+b

        逻辑运算符   大多数情况都会用在条件里边

         &&     只有当两边的条件都为真时,整体返回true,其他情况全返回false

         ||     只有当两边的条件都为假时,整体返回false,其他情况全返回true

         !         非真即假   非假即真

        字符串拼接运算   变量和字符串拼接

          +  

          5+5     // 10

          10+'5' // 105

        三元运算符

        条件?条件为真的执行:条件为假的执行

    */

//    取余运算  %

// ++  --   注意:参与运算的是一个变量

var num = 10

// ++num  和  num++  对于num这个变量来讲没有任何区别

 // var res = ++num    // num = 11   res = 11

  var res = num++    // num = 11   res = 10

 

 运算符扩展

指数运算符 符号 **

5的3次方

console.log( 5**3);

指数赋值运算符 符号 **=

var a = 2;

a**=4

等价于 a = a**4

console.log(a);


http://www.niftyadmin.cn/n/1017053.html

相关文章

修改传奇私服服务器,传奇SF 肿么修改服务器时间

怎么修改服务器时间&#xff1f;是一个很勇敢的客户&#xff0c;基本上不懂怎么操作linux系统&#xff0c;但是愿意买了&#xff0c;来享受我司的一些免费指导和来提高自学能力&#xff0c;用他自己的话说&#xff0c;这就跟花钱去健身房一样&#xff0c;其实运动在哪都可以做&…

Netty中的责任链模式

适用场景: 对于一个请求来说,如果有个对象都有机会处理它,而且不明确到底是哪个对象会处理请求时,我们可以考虑使用责任链模式实现它,让请求从链的头部往后移动,直到链上的一个节点成功处理了它为止优点: 发送者不需要知道自己发送的这个请求到底会被哪个对象处理掉,实现了发送…

微信公众平台版面设计需要服务器,公众号版面设计,微信公众号中排版怎么弄...

滚动条在手机端不显示的&#xff0c;直接用手指滑动就可以了。这个很麻烦的&#xff0c;可以多试试看&#xff0c;不用如此麻烦&#xff0c;使用的是微信编辑器&#xff0c;可能文件过大&#xff0c;做小一点儿试试。不用如此麻烦&#xff0c;可能是你的系统配置问题吧&#xf…

Java面试题 从源码角度分析HashSet实现原理?

面试官&#xff1a;请问HashSet有哪些特点&#xff1f; 应聘者&#xff1a;HashSet实现自set接口&#xff0c;set集合中元素无序且不能重复&#xff1b; 面试官&#xff1a;那么HashSet 如何保证元素不重复&#xff1f; 应聘者&#xff1a;因为HashSet底层是基于HashMap实现的&…

11.18-LV调用python问题

安装 pip python 2.7.9 之后的版本默认包含pip包维护工具安装辅助工具 刚在机器上windows环境下装上pip方便以后安装包的时候使用&#xff0c;谁知道第一次使用pip安装asyncio的时候就报错。 在Windows7x64下使用pip安装包的时候提示报错&#xff1a;Microsoft Visual C 9.0 is…

ajax加载评论内容,评论列表通过ajax方式怎么加载

唐彡公子2018-08-17 12:00:102楼已经实现&#xff0c;讲一下思路&#xff0c;老师看看这样是否妥当1、详情页加载时按照后台查询并模板赋值方式&#xff0c;在前台通过volist实现首次加载2、详情页进入后发布评论&#xff0c;前台通过ajax提交评论新增&#xff0c;后台执行新增…

ajax定时轮询请求配合.net后台的多线程处理方法的应用

该方法主要针对的情况是&#xff1a;后台数据处理时间较长&#xff0c;前台请求在长时间未接收到后台的返回值时&#xff0c;会失去连接。因此可以使用ajax轮询定时向后台请求数据。 后台的多线程指的是将计算量比较大的部分放到子线程中进行处理&#xff0c;主线程依旧运行&am…

jquery ajax提交中文乱码问题,如何解决JQuery ajaxSubmit提交中文乱码

用户提问在实例化 PDO 时附加的参数 array(PDO::MYSQL_ATTR_INIT_COMMAND > "set names utf8") 表示的意思是&#xff1a;连接mysql成果后&#xff0c;立即执行 set names utf8 指令&#xff0c;即将通讯用的字符集设为 utf-8 由于 mysql 数据库都是独立的&#x…