gpt4 book ai didi

javascript - 如何使用jade中的变量调用数组的值

转载 作者:行者123 更新时间:2023-12-03 05:59:37 24 4
gpt4 key购买 nike

无法弄清楚为什么变量不能用于帮助使用 JS/Jade 调用数组中的值。这是在 .jade 文件的脚本内调用的。

该数组包含大约 400 个条目,其中一个条目如下:

myFood[10]['Cake'] = 50

当使用变量i而不是直接输入数字10时,会发生错误。

作品:

alert (i)                     // 10
alert (#{myFood[10]['Cake']}) // 50

错误:

alert (#{myFood[i]['Cake']})  // Error, Cannot read property 'Cake' of undefined.

最佳答案

首先,知道Jade最近更名为"pugjs" .

我假设 i 是一个 JavaScript 变量,正如您在评论中所述。

pug (jade) 上下文和浏览器 Javascript 上下文是两个非常不同的东西,所以如果你在浏览器 Javascript 中定义 i,jade 不会将其视为变量,只是等待的明文由浏览器解释。这就是为什么 myFood[i]undefined 并因此导致此错误的原因。

定义 jade 变量的正确方法是在行前添加破折号 (-),如 here 中所述。 .

完整代码为:

- var i = 10;
alert (#{i}) // 10
alert (#{myFood[10]['Cake']}) // 50

您注意到,我还更改了第一个警报,以告诉 pug 将 #{i} 部分替换为 i 的实际值。

如果您想访问每个值,我强烈建议您使用 loops而不是使用 i 来访问数组。

混合 pug 和 javascript 有点棘手,祝你好运!

关于javascript - 如何使用jade中的变量调用数组的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39800668/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com