Change variable globally inside setInterval()
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I'm trying to display how many seconds have passed with a setInterval function in JavaScript embedded in HTML. I tried the code below, however it only outputs 1, but it seems like the test function isn't executed more than once.
Any help would be much appreciated!
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test(), 1000);
javascript setinterval
add a comment |
I'm trying to display how many seconds have passed with a setInterval function in JavaScript embedded in HTML. I tried the code below, however it only outputs 1, but it seems like the test function isn't executed more than once.
Any help would be much appreciated!
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test(), 1000);
javascript setinterval
setInterval(test, 1000)
— by including the()
you're calling the function and passing its result tosetTimeout()
.
– Pointy
Nov 15 '18 at 14:00
You should not use document.write, why have courses not updated this.....
– epascarello
Nov 15 '18 at 14:05
add a comment |
I'm trying to display how many seconds have passed with a setInterval function in JavaScript embedded in HTML. I tried the code below, however it only outputs 1, but it seems like the test function isn't executed more than once.
Any help would be much appreciated!
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test(), 1000);
javascript setinterval
I'm trying to display how many seconds have passed with a setInterval function in JavaScript embedded in HTML. I tried the code below, however it only outputs 1, but it seems like the test function isn't executed more than once.
Any help would be much appreciated!
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test(), 1000);
javascript setinterval
javascript setinterval
edited Nov 15 '18 at 14:02
chazsolo
5,41011234
5,41011234
asked Nov 15 '18 at 13:58
WieselWiesel
62
62
setInterval(test, 1000)
— by including the()
you're calling the function and passing its result tosetTimeout()
.
– Pointy
Nov 15 '18 at 14:00
You should not use document.write, why have courses not updated this.....
– epascarello
Nov 15 '18 at 14:05
add a comment |
setInterval(test, 1000)
— by including the()
you're calling the function and passing its result tosetTimeout()
.
– Pointy
Nov 15 '18 at 14:00
You should not use document.write, why have courses not updated this.....
– epascarello
Nov 15 '18 at 14:05
setInterval(test, 1000)
— by including the ()
you're calling the function and passing its result to setTimeout()
.– Pointy
Nov 15 '18 at 14:00
setInterval(test, 1000)
— by including the ()
you're calling the function and passing its result to setTimeout()
.– Pointy
Nov 15 '18 at 14:00
You should not use document.write, why have courses not updated this.....
– epascarello
Nov 15 '18 at 14:05
You should not use document.write, why have courses not updated this.....
– epascarello
Nov 15 '18 at 14:05
add a comment |
5 Answers
5
active
oldest
votes
Remove the parenthesis after function name. Simply specify the name of the function.
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
add a comment |
var n=1;
function test()
document.getElementById("counter").innerHTML = n;
n+=1;
setInterval(()=>
test()
, 1000);
<div id="counter">0</div>
You should consider adding an explanation of what you did and how it solves the problem.
– chazsolo
Nov 15 '18 at 14:06
add a comment |
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Remove the ()
add a comment |
You should remove parentheses of function in setInterval
to calling target function.
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Also you can write second number in special element instead of using write()
to better working
var n = 0;
function test()
document.getElementsByTagName("div")[0].innerHTML = n+=1;
setInterval(test, 1000);
<div>0</div>
add a comment |
This should also work!
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(() => test(), 1000);
Edit: don't do this, it creates an unnecessary function!
This only creates an unnecessary new function.
– Sebastian Speitel
Nov 15 '18 at 14:04
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53321099%2fchange-variable-globally-inside-setinterval%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
5 Answers
5
active
oldest
votes
5 Answers
5
active
oldest
votes
active
oldest
votes
active
oldest
votes
Remove the parenthesis after function name. Simply specify the name of the function.
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
add a comment |
Remove the parenthesis after function name. Simply specify the name of the function.
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
add a comment |
Remove the parenthesis after function name. Simply specify the name of the function.
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Remove the parenthesis after function name. Simply specify the name of the function.
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
answered Nov 15 '18 at 14:00
MamunMamun
30.7k71932
30.7k71932
add a comment |
add a comment |
var n=1;
function test()
document.getElementById("counter").innerHTML = n;
n+=1;
setInterval(()=>
test()
, 1000);
<div id="counter">0</div>
You should consider adding an explanation of what you did and how it solves the problem.
– chazsolo
Nov 15 '18 at 14:06
add a comment |
var n=1;
function test()
document.getElementById("counter").innerHTML = n;
n+=1;
setInterval(()=>
test()
, 1000);
<div id="counter">0</div>
You should consider adding an explanation of what you did and how it solves the problem.
– chazsolo
Nov 15 '18 at 14:06
add a comment |
var n=1;
function test()
document.getElementById("counter").innerHTML = n;
n+=1;
setInterval(()=>
test()
, 1000);
<div id="counter">0</div>
var n=1;
function test()
document.getElementById("counter").innerHTML = n;
n+=1;
setInterval(()=>
test()
, 1000);
<div id="counter">0</div>
var n=1;
function test()
document.getElementById("counter").innerHTML = n;
n+=1;
setInterval(()=>
test()
, 1000);
<div id="counter">0</div>
var n=1;
function test()
document.getElementById("counter").innerHTML = n;
n+=1;
setInterval(()=>
test()
, 1000);
<div id="counter">0</div>
answered Nov 15 '18 at 14:04
suzansuzan
1,3241520
1,3241520
You should consider adding an explanation of what you did and how it solves the problem.
– chazsolo
Nov 15 '18 at 14:06
add a comment |
You should consider adding an explanation of what you did and how it solves the problem.
– chazsolo
Nov 15 '18 at 14:06
You should consider adding an explanation of what you did and how it solves the problem.
– chazsolo
Nov 15 '18 at 14:06
You should consider adding an explanation of what you did and how it solves the problem.
– chazsolo
Nov 15 '18 at 14:06
add a comment |
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Remove the ()
add a comment |
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Remove the ()
add a comment |
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Remove the ()
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Remove the ()
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
answered Nov 15 '18 at 14:01
ArthurArthur
112
112
add a comment |
add a comment |
You should remove parentheses of function in setInterval
to calling target function.
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Also you can write second number in special element instead of using write()
to better working
var n = 0;
function test()
document.getElementsByTagName("div")[0].innerHTML = n+=1;
setInterval(test, 1000);
<div>0</div>
add a comment |
You should remove parentheses of function in setInterval
to calling target function.
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Also you can write second number in special element instead of using write()
to better working
var n = 0;
function test()
document.getElementsByTagName("div")[0].innerHTML = n+=1;
setInterval(test, 1000);
<div>0</div>
add a comment |
You should remove parentheses of function in setInterval
to calling target function.
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Also you can write second number in special element instead of using write()
to better working
var n = 0;
function test()
document.getElementsByTagName("div")[0].innerHTML = n+=1;
setInterval(test, 1000);
<div>0</div>
You should remove parentheses of function in setInterval
to calling target function.
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
Also you can write second number in special element instead of using write()
to better working
var n = 0;
function test()
document.getElementsByTagName("div")[0].innerHTML = n+=1;
setInterval(test, 1000);
<div>0</div>
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(test, 1000);
var n = 0;
function test()
document.getElementsByTagName("div")[0].innerHTML = n+=1;
setInterval(test, 1000);
<div>0</div>
var n = 0;
function test()
document.getElementsByTagName("div")[0].innerHTML = n+=1;
setInterval(test, 1000);
<div>0</div>
answered Nov 15 '18 at 14:04
MohammadMohammad
16.1k123766
16.1k123766
add a comment |
add a comment |
This should also work!
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(() => test(), 1000);
Edit: don't do this, it creates an unnecessary function!
This only creates an unnecessary new function.
– Sebastian Speitel
Nov 15 '18 at 14:04
add a comment |
This should also work!
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(() => test(), 1000);
Edit: don't do this, it creates an unnecessary function!
This only creates an unnecessary new function.
– Sebastian Speitel
Nov 15 '18 at 14:04
add a comment |
This should also work!
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(() => test(), 1000);
Edit: don't do this, it creates an unnecessary function!
This should also work!
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(() => test(), 1000);
Edit: don't do this, it creates an unnecessary function!
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(() => test(), 1000);
var n=1;
function test()
document.write(n);
n=n+1;
setInterval(() => test(), 1000);
edited Nov 15 '18 at 14:05
answered Nov 15 '18 at 14:02
YoldrimYoldrim
286
286
This only creates an unnecessary new function.
– Sebastian Speitel
Nov 15 '18 at 14:04
add a comment |
This only creates an unnecessary new function.
– Sebastian Speitel
Nov 15 '18 at 14:04
This only creates an unnecessary new function.
– Sebastian Speitel
Nov 15 '18 at 14:04
This only creates an unnecessary new function.
– Sebastian Speitel
Nov 15 '18 at 14:04
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53321099%2fchange-variable-globally-inside-setinterval%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
setInterval(test, 1000)
— by including the()
you're calling the function and passing its result tosetTimeout()
.– Pointy
Nov 15 '18 at 14:00
You should not use document.write, why have courses not updated this.....
– epascarello
Nov 15 '18 at 14:05