gpt4 book ai didi

javascript - 如何在变量的值确定之前对其进行初始化?

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

我有一个基本的 for 循环,用于确定名为 animationDirection 的变量的值 'left''right'

如何在循环之前初始化此变量,以便可以在其中定义它?

我尝试使用 varanimationDirection = undefined; 将其初始化为 undefined,但 javascript linter 不赞成这样做。

我已经确定了下面在循环逻辑中定义animationDirection的代码,但这似乎是一个坏主意,因为我使用var初始化变量两次。

关于如何更好地定义变量有什么想法吗?

for (var i = 0; i < $selected.length; i++) {

if (i < ($selected.length / 2)) {
var animationDirection = 'left';
} else {
animationDirection = 'right';
}

$($selected[i])
.css(animationDirection, animationOffset)
.velocity(animation, animationConfig);
}

最佳答案

像这样:

var animationDirection,
i;

for (i = 0; i < $selected.length; i += 1) {

if (i < ($selected.length / 2)) {
animationDirection = 'left';
} else {
animationDirection = 'right';
}

$($selected[i])
.css(animationDirection, animationOffset)
.velocity(animation, animationConfig);
}

Douglas Crockford 的 JSLint 要求在函数顶部声明变量(不确定您使用的是什么 lint)。

这里有一个更简洁的方法,它避免了 for 循环语义(假设这里 $selected 是一个 jQuery 对象),并提出了在哪里声明变量的问题简单得多:

$selected.each(function(i, e) {
var animationDirection = (i < ($selected.length / 2)) ? "left" : "right";
$(e).css(animationDirection, animationOffset)
.velocity(animation, animationConfig);
});

关于javascript - 如何在变量的值确定之前对其进行初始化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23572552/

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