CountDown app cannot convert string to integer using AngularJS












0















I am trying to make a countdown app. At the below code, I defined an integer variable. Then seperated it into two parts: minutes and seconds
When



$scope.remainingTime = 120;

var interval = $interval(function () {
if ($scope.remainingTime === 1) {
$interval.cancel(interval);
}

$scope.remainingTime--;

var min = Math.floor($scope.remainingTime % 3600 / 60);
var sec = Math.floor($scope.remainingTime % 3600 % 60);

var time = (min = min < 10 ? "0" + min : min) + " : " + (sec = sec < 10 ? "0" + sec : sec);
parseInt(time, 10);
$scope.remainingTime = time;
}, 1000);


For the first iteration it decriments. But then when I try to decriment it, it gives NaN error because of the time variable and when I try to parse it, it doesn't work. Any idea?










share|improve this question

























  • parseInt doens't work by reference, you need to assign the result: time = parseInt(time, 10);. developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…

    – briosheje
    Nov 23 '18 at 12:39











  • @briosheje Nope. It also doesn't work

    – Safa Elmalı
    Nov 23 '18 at 12:40











  • another simplest solution would be to keep remainingTime as it is, and use another variable as text for your display, so you don't need to keep parsing it back

    – Kaddath
    Nov 23 '18 at 12:41













  • @SafaElmalı define "doesn't work". If the issue is that it can't convert string to integer, the problem relies on the fact that you're assigning to remainingTime a string. If the script doesn't work for any other reason, that's another story.

    – briosheje
    Nov 23 '18 at 12:42











  • @briosheje getting the same NaN error.

    – Safa Elmalı
    Nov 23 '18 at 12:45
















0















I am trying to make a countdown app. At the below code, I defined an integer variable. Then seperated it into two parts: minutes and seconds
When



$scope.remainingTime = 120;

var interval = $interval(function () {
if ($scope.remainingTime === 1) {
$interval.cancel(interval);
}

$scope.remainingTime--;

var min = Math.floor($scope.remainingTime % 3600 / 60);
var sec = Math.floor($scope.remainingTime % 3600 % 60);

var time = (min = min < 10 ? "0" + min : min) + " : " + (sec = sec < 10 ? "0" + sec : sec);
parseInt(time, 10);
$scope.remainingTime = time;
}, 1000);


For the first iteration it decriments. But then when I try to decriment it, it gives NaN error because of the time variable and when I try to parse it, it doesn't work. Any idea?










share|improve this question

























  • parseInt doens't work by reference, you need to assign the result: time = parseInt(time, 10);. developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…

    – briosheje
    Nov 23 '18 at 12:39











  • @briosheje Nope. It also doesn't work

    – Safa Elmalı
    Nov 23 '18 at 12:40











  • another simplest solution would be to keep remainingTime as it is, and use another variable as text for your display, so you don't need to keep parsing it back

    – Kaddath
    Nov 23 '18 at 12:41













  • @SafaElmalı define "doesn't work". If the issue is that it can't convert string to integer, the problem relies on the fact that you're assigning to remainingTime a string. If the script doesn't work for any other reason, that's another story.

    – briosheje
    Nov 23 '18 at 12:42











  • @briosheje getting the same NaN error.

    – Safa Elmalı
    Nov 23 '18 at 12:45














0












0








0








I am trying to make a countdown app. At the below code, I defined an integer variable. Then seperated it into two parts: minutes and seconds
When



$scope.remainingTime = 120;

var interval = $interval(function () {
if ($scope.remainingTime === 1) {
$interval.cancel(interval);
}

$scope.remainingTime--;

var min = Math.floor($scope.remainingTime % 3600 / 60);
var sec = Math.floor($scope.remainingTime % 3600 % 60);

var time = (min = min < 10 ? "0" + min : min) + " : " + (sec = sec < 10 ? "0" + sec : sec);
parseInt(time, 10);
$scope.remainingTime = time;
}, 1000);


For the first iteration it decriments. But then when I try to decriment it, it gives NaN error because of the time variable and when I try to parse it, it doesn't work. Any idea?










share|improve this question
















I am trying to make a countdown app. At the below code, I defined an integer variable. Then seperated it into two parts: minutes and seconds
When



$scope.remainingTime = 120;

var interval = $interval(function () {
if ($scope.remainingTime === 1) {
$interval.cancel(interval);
}

$scope.remainingTime--;

var min = Math.floor($scope.remainingTime % 3600 / 60);
var sec = Math.floor($scope.remainingTime % 3600 % 60);

var time = (min = min < 10 ? "0" + min : min) + " : " + (sec = sec < 10 ? "0" + sec : sec);
parseInt(time, 10);
$scope.remainingTime = time;
}, 1000);


For the first iteration it decriments. But then when I try to decriment it, it gives NaN error because of the time variable and when I try to parse it, it doesn't work. Any idea?







javascript angularjs






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 23 '18 at 14:16









wanttobeprofessional

1,03531323




1,03531323










asked Nov 23 '18 at 12:37









Safa ElmalıSafa Elmalı

138




138













  • parseInt doens't work by reference, you need to assign the result: time = parseInt(time, 10);. developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…

    – briosheje
    Nov 23 '18 at 12:39











  • @briosheje Nope. It also doesn't work

    – Safa Elmalı
    Nov 23 '18 at 12:40











  • another simplest solution would be to keep remainingTime as it is, and use another variable as text for your display, so you don't need to keep parsing it back

    – Kaddath
    Nov 23 '18 at 12:41













  • @SafaElmalı define "doesn't work". If the issue is that it can't convert string to integer, the problem relies on the fact that you're assigning to remainingTime a string. If the script doesn't work for any other reason, that's another story.

    – briosheje
    Nov 23 '18 at 12:42











  • @briosheje getting the same NaN error.

    – Safa Elmalı
    Nov 23 '18 at 12:45



















  • parseInt doens't work by reference, you need to assign the result: time = parseInt(time, 10);. developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…

    – briosheje
    Nov 23 '18 at 12:39











  • @briosheje Nope. It also doesn't work

    – Safa Elmalı
    Nov 23 '18 at 12:40











  • another simplest solution would be to keep remainingTime as it is, and use another variable as text for your display, so you don't need to keep parsing it back

    – Kaddath
    Nov 23 '18 at 12:41













  • @SafaElmalı define "doesn't work". If the issue is that it can't convert string to integer, the problem relies on the fact that you're assigning to remainingTime a string. If the script doesn't work for any other reason, that's another story.

    – briosheje
    Nov 23 '18 at 12:42











  • @briosheje getting the same NaN error.

    – Safa Elmalı
    Nov 23 '18 at 12:45

















parseInt doens't work by reference, you need to assign the result: time = parseInt(time, 10);. developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…

– briosheje
Nov 23 '18 at 12:39





parseInt doens't work by reference, you need to assign the result: time = parseInt(time, 10);. developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…

– briosheje
Nov 23 '18 at 12:39













@briosheje Nope. It also doesn't work

– Safa Elmalı
Nov 23 '18 at 12:40





@briosheje Nope. It also doesn't work

– Safa Elmalı
Nov 23 '18 at 12:40













another simplest solution would be to keep remainingTime as it is, and use another variable as text for your display, so you don't need to keep parsing it back

– Kaddath
Nov 23 '18 at 12:41







another simplest solution would be to keep remainingTime as it is, and use another variable as text for your display, so you don't need to keep parsing it back

– Kaddath
Nov 23 '18 at 12:41















@SafaElmalı define "doesn't work". If the issue is that it can't convert string to integer, the problem relies on the fact that you're assigning to remainingTime a string. If the script doesn't work for any other reason, that's another story.

– briosheje
Nov 23 '18 at 12:42





@SafaElmalı define "doesn't work". If the issue is that it can't convert string to integer, the problem relies on the fact that you're assigning to remainingTime a string. If the script doesn't work for any other reason, that's another story.

– briosheje
Nov 23 '18 at 12:42













@briosheje getting the same NaN error.

– Safa Elmalı
Nov 23 '18 at 12:45





@briosheje getting the same NaN error.

– Safa Elmalı
Nov 23 '18 at 12:45












0






active

oldest

votes











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
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53446851%2fcountdown-app-cannot-convert-string-to-integer-using-angularjs%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes
















draft saved

draft discarded




















































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.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53446851%2fcountdown-app-cannot-convert-string-to-integer-using-angularjs%23new-answer', 'question_page');
}
);

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







Popular posts from this blog

Wiesbaden

Marschland

Dieringhausen