为什么无法实现,能跟我讲解一下原理吗?

为什么无法实现,能跟我讲解一下原理吗?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        let[x,y,z]=[10,20,30]
        [x,y,z]=[z,x,y]
        console.log(x,y,z)
    </script>
</body>
</html>

问题描述:

为什么无法实现,能跟我讲解一下原理吗?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,声明变量直接赋值就好,参考修改:

https://img1.sycdn.imooc.com//climg/63d89bda09148a4f05170153.jpg

等号右侧将变量按照想要的结果放进数组中,等号左侧进行解构,x,y和z会按照位置进行解构。

祝学习愉快!

  • GanKuoLong 提问者 #1

    为什么不能用let[x,y,z]=[10,20,30]来赋值,输出结果是赋值成功的。

    2023-01-31 12:46:34
  • 好帮手慕星星 回复 提问者 GanKuoLong #2

    let[x,y,z]=[10,20,30]这样赋值是可以的。同学粘贴的代码不成功是解析的原因,let声明代码行结尾需要加分号

    https://img1.sycdn.imooc.com//climg/63d8be9809f2ddf404160099.jpg

    否则可能会与下面代码一起解析为声明的,从而报错。参考:

    https://img1.sycdn.imooc.com//climg/63d8bf1e0954b96f05410118.jpg

    这样就没问题了

    https://img1.sycdn.imooc.com//climg/63d8bf27093444ae00000000.jpg

    2023-01-31 15:11:42
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师