let { msg, code, user } = data;什么意思?

发布于 2022-09-05 09:05:46 字数 502 浏览 17 评论 0

今天看到这样一段代码:

requestLogin(loginParams).then(data => {
  this.logining = false;
  //NProgress.done();
  let { msg, code, user } = data;
  if (code !== 200) {
    this.$message({
      message: msg,
      type: 'error'
    });
  } else {
    sessionStorage.setItem('user', JSON.stringify(user));
    this.$router.push({ path: '/table' });
  }
});

有了解过ES6的语法,但是不知道`let { msg, code, user } = data;
`这一句是什么意思。自己网上找了挺久找不到答案。一般定义一个变量不是直接var(orlet)=xxx吗,那个中括号什么意思呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

梦初启 2022-09-12 09:05:46

叫解构赋值

let jsonData = {
  id: 42,
  status: "OK",
  data: [867, 5309]
};

let { id, status, data: number } = jsonData;

console.log(id, status, number);
// 42, "OK", [867, 5309]

ES6 推荐一下 阮一峰的

冬天的雪花 2022-09-12 09:05:46

写成es5如下:

//let { msg, code, user } = data;
let msg = data.msg,
    code = data.code,
    user = data.user;

es6新语法糖,在某些场景下会方便许多

卖梦商人 2022-09-12 09:05:46

ES6 语法
意思为从对象data中取出这几个键值作为变量来使用, 很简单
详见 MDN

極樂鬼 2022-09-12 09:05:46

es6中的对象的结构赋值

农村范ル 2022-09-12 09:05:46

es6的新语法,百度es6 变量的解构赋值,有很多相关介绍,这里就不赘述了。参考变量的解构赋值

白云不回头 2022-09-12 09:05:46

解构还是叫解耦来着,忘了,就是这么一回事。把那几个属性付给一个对象变量。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文