我是javascript的新手。我很喜欢在我使用的面向对象的SDK中制作应用程序。一直在网上寻找一些简单的东西的解决方案,但似乎无法找到答案。
当变量达到特定值或对象到达特定坐标时,如何调用函数?
在上面提到的SDK中,我只想说:
如果myVariable = 10 做点什么
或 if object.position.y = 90 做点什么
Javascript似乎没有这样的工作方式?看起来你只能在mousclick或mouseover等事件上调用函数?如何在不使用事件的情况下调用该函数?
感谢您的帮助!
您的回复似乎在说我只是从if语句中调用一个函数。 (这是我所期待的!)。但是我做的每个测试都没有像下面的例子那样触发函数,函数hello不会触发。我做错了什么?
var count = 0;
function hello()
{
console.log("hello");
}
setInterval(function ()
{
count++;
console.log(count);
}, 2000);
if(count==2)
{
hello();
}
答案 0 :(得分:0)
if (myVariable == 10 || object.prosition.y == 90){
// do something
}
else{
// do something else
}
答案 1 :(得分:0)
调用函数?这很简单。您可以使用functionName()
来调用函数。像这样:
if (myVariable == 10) {
doSomething();
}
if (object.position.y == 90) {
moveObject(object);
}
function doSomething() {
alert('hello!');
}
function moveObject(object) {
object.position.y = 85;
}
*编辑:*
好的,根据您的代码示例,问题是setInterval()
执行没有上下文的函数,因此周围代码中的count
变量永远不会被更改。另一个问题是你的周围脚本在计数上升到非常高之前完成执行,即使它被正确引发。
你可以通过使用中间函数或闭包来解决这个问题。有关前者的示例,请参阅此fiddle。
更多阅读材料here。