gpt4 book ai didi

javascript - 如何在 Angular JS 中将 obj 转换为字符串

转载 作者:行者123 更新时间:2023-12-02 18:02:02 25 4
gpt4 key购买 nike

我正在尝试查找工厂返回的剩余部分。即使 obj 返回一个数字,我仍然得到 null。有没有办法将返回值转换为真实数字?

使用路由提供商设置模块

            var emanuel = angular.module('emanuel', []).config(function($routeProvider){
$routeProvider.when('/weekday-morning', {
templateUrl: 'content/weekday-morning.html',
controller: 'WeekdayMorning'
});
$routeProvider.otherwise ({redirectTo: '/home' });
});

接收日期(mm/dd/yyyy)字符串并根据 JSON 日历解析它的工厂

            emanuel.factory('DayService', function($http, $q, $window){
var obj = {};
obj.oscWeek = function(d){
//receives a date format mm/dd/yyyy
var promise = $q.defer();
$http.get('content/calendar.json').success(function(data) {
var temp ='';
for (var i=0; i<data.calendar.seasons.season.length; i++){
//iterates through the end dates of all seasons to find current season
var day = new Date(d).getTime();
var end = new Date(data.calendar.seasons.season[i].end);
end.setHours(23,59);
//$window.alert(end);
end = end.getTime();
var diff = end - day;
diff = diff /(1000*60*60*24);
//$window.alert(diff);

if (parseFloat(diff) > 0){
// upon finding current season, find the time lapse since the start of the season
var start = new Date(data.calendar.seasons.season[i].start);
//$window.alert(start);
start = start.getTime();
var startDiff = day - start;
// converts time lapse into whole weeks
var week = parseInt(startDiff /(1000*60*60*24*7))+1;
promise.resolve(week);
break;
}
}
});
return promise.promise;
}
return obj;
});

接收 obj 返回的 Controller 。 temp 返回 1,但 temp%2 返回 Null。

            emanuel.controller('WeekdayMorning', function($scope, DayService){
$scope.display = function(d) {
var date;
if(d=='today'){
date = new Date();
} else {
date = $scope.date;
}

var temp = DayService.oscWeek(date);
$scope.week = temp;
$scope.modulo = temp%2;
}
});

最佳答案

您的服务方法返回一个 promise 。模运算符不适用于 Promise。你的 Controller 中应该有这个:

temp.then(function(week) {
$scope.week = week;
$scope.modulo = week % 2;
});

关于javascript - 如何在 Angular JS 中将 obj 转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20439613/

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