为什么我的整数对象在post方法后自动转换为字符串
Why does my integer object automatically convert to string after post method?
我有一个对象将我的数字转换成字符串。我已经做了相当多的谷歌试图找出为什么会发生这种情况,但我仍然不确定-我认为这可能与JSON或标题信息在post方法?所以,我的下一个尝试是将对象转换回整数。我看到了几个选项:parseInt(), Number(), split('"'),但没有解决我的问题。
后:rootScope美元。fullDay = {我:"1",星期二:"2"}
我需要它的格式如下:之前帖子:
rootScope美元。fullDay = {我的:1、2}
编辑:值不在引号中,如下所示:
<li class="col-md-3">
<input type="checkbox" id="Monday" ng-true-value= 1 ng-model="day.mon" ng-change="selectedDay()">
<label class="ui-checkbox" for="Monday">Monday</label>
</li>
<li class="col-md-3">
<input type="checkbox" id="Tuesday" ng-true-value= 2 ng-model="day.tue" ng-change="selectedDay()">
<label class="ui-checkbox" for="Tuesday">Tuesday</label>
JS文件:
$scope.selectedDay = function () {
if (!$rootScope.edit) {
console.log($scope.day)
$rootScope.fullDay = $scope.day;
$rootScope.day = Object.keys($scope.day).map(key => $scope.day[key]);
$rootScope.day.forEach(function (item, index) {
if (item === false) {
$rootScope.day.splice(index, 1);
}
});
$rootScope.dayFormatted = $rootScope.day.join(' ');
$rootScope.schedule.weekdays.day['@'].day = $rootScope.dayFormatted;
}
POST(仅包括部分):
createJob_API: function () {
var data = $.param({"fullDay": $rootScope.fullDay, "fullDate": $rootScope.fullDate})
var settings = {
method: 'POST',
data: data,
headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' },
这是POST之前的控制台日志的图像:https://i.stack.imgur.com/2yl9d.jpg后:https://i.stack.imgur.com/MgB27.jpg注意:第二个img只是一个例子,输出的日期与前一个图像不同。
谢谢你的帮助-如果有人能告诉我为什么转换会自动发生,我会很感激。
application/x-www-form-urlencoded
只支持键=值对。它不区分不同的数据类型。它只支持字符串
(它的非标准扩展在键名中使用[]
字符来表示数组和对象,但是没有区分字符串和数字的任何东西)。
如果您想要一个数字,那么您必须在数据到达服务器后将其转换为该格式。
通过将它们放在引号中,将它们存储为字符串,如果您像这样存储它们:
var obj = {
mon: 1,
tue: 2
};
你会发现那个对象。Mon是整型,不是字符串
我可以用以下方法解决我的问题:
Object.keys($rootScope.edit.fullDay).forEach(function(key,value){
$rootScope.edit.fullDay[key] = parseInt($rootScope.edit.fullDay[key]);
相关文章:
- 如何使用JQuery在Javascript中转换字符串中的HTML元素
- 将JSON插入MongoDB中,自动转换字符串中的日期
- 以点表示法转换字符串以获取对象引用
- 在 JavaScript 中转换字符串 11/28/2014 11:00 AM 到现在
- 为什么在主干的字符串数组中转换字符串数组
- 如何简单地转换字符串
- AngularJS如何转换字符串“;yyyyMMdd”;迄今为止
- 如何防止htmlspecialchar(PHP)转换字符串中的整数
- 刷新Aurelia中的i18n转换字符串插值
- 发布时禁用转换字符串
- 转换字符串货币
- 在javascript ajax调用中转换字符串到数组
- 转换字符串包含时间到24小时的时间,我可以做数学与- jQuery
- IE javascript引擎在转换字符串到日期时呈现NaN
- 如何转换字符串“a,b,c,d……”成a.b (c, d . .);来执行
- 如何在javascript中转换字符串到日期格式
- 如何在嵌套数组中转换字符串数组
- 在javascript中转换字符串日期
- 转换字符串在印度格式的javascript
- Javascript转换字符串到数组的对象