【问题标题】:Removing first two digits in year field using Jquery使用Jquery删除年份字段中的前两位数字
【发布时间】:2018-06-14 07:39:14
【问题描述】:

我将使用 Angular js 将 2018 年之前的所有年份列出到一个下拉列表中。目前,我正在做一个支付网关增强,我想给用户根据那里的信用卡选择年份。

我用过

$scope.years = Enumerable.Range(new Date().getFullYear(), 36, 1).ToArray();

这将给出从 2018 年到 2054 年的所有年份。但情况是,当涉及到数组时,我不需要以 4 位数的方式显示年份。我想将其显示为 18、19、20 等。目前,我得到的值类似于 2018、2019、2020。

我主要关心的是如何删除数组的前两位数字。

我使用了 substring(),但它仅适用于数组中的第一项。

【问题讨论】:

    标签: jquery arrays angularjs substring


    【解决方案1】:

    试试这个:

    $scope.years = Enumerable.Range(Number(new Date().getFullYear().toString().substr(2, 4)), 36, 1).ToArray();
    

    【讨论】:

    • 这很有帮助,而且当场。我试图使用 jquery map 函数并通过使用 foreach 迭代使用。非常感谢最简单的代码。
    • 不客气,只需将其标记为已解决以帮助他人;)
    【解决方案2】:

    使用 for 循环试试这个:

    $scope.years= [2018,2019,2020]; //just an example
    for (var i=0; i<$scope.years.length; i++){
        $scope.years[i] = parseInt($scope.years[i].toString().substring(2,4));
    }
    

    输出:

    [18,19,20]

    【讨论】:

    • 我认为下面的代码片段是最好的答案。我通过使用循环尝试了与您提到的相同的方式。但是当场@Talavera 代码片段。感谢推友。
    • $scope.years = Enumerable.Range(Number(new Date().getFullYear().toString().substr(2, 4)), 36, 1).ToArray();
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-10
    • 1970-01-01
    相关资源
    最近更新 更多