【问题标题】:Concatenate the date in each element连接每个元素中的日期
【发布时间】:2018-02-16 09:02:00
【问题描述】:

我想连接日期。这是我的代码,我首先创建了今天的年份和下一个日期,我添加 1 个月成为 2019。我不知道问题是什么,为什么它没有显示结果。

function myFunction() {

    var d = new Date();
    var n = d.getFullYear();
    var date = document.getElementById("demo").innerHTML = n;
    
    var d1 = new Date();
    var n1 = d1.getFullYear()+1;
    var date1 = document.getElementById("demo1").innerHTML = n1;
    
    var str3 = "-";
    var res = date.concat(str3,date1);
    document.getElementById("disp").innerHTML = res;

}
<!DOCTYPE html>
<html>
<body onload="myFunction()">

<p>Click the button to display the full year of todays date.</p>


<p id="demo"></p>
<p id="demo1"></p>
<p id="disp"></p>



</body>
</html>

【问题讨论】:

    标签: javascript html date


    【解决方案1】:

    我不知道是什么问题,为什么它没有显示结果。

    因为你得到了

    "Uncaught TypeError: date.concat is not a function",

    date 是一个数字,它没有 concat 方法。先转换成String

    var res = String(date).concat(str3,date1);
    

    演示

    function myFunction() {
    
        var d = new Date();
        var n = d.getFullYear();
        var date = document.getElementById("demo").innerHTML = n;
        
        var d1 = new Date();
        var n1 = d1.getFullYear()+1;
        var date1 = document.getElementById("demo1").innerHTML = n1;
        console.log(date, date1);
        var str3 = "-";
        var res = String(date).concat(str3,date1);
        document.getElementById("disp").innerHTML = res;
    
    }
    <!DOCTYPE html>
    <html>
    <body onload="myFunction()">
    
    <p>Click the button to display the full year of todays date.</p>
    
    
    <p id="demo"></p>
    <p id="demo1"></p>
    <p id="disp"></p>
    
    
    
    </body>
    </html>

    【讨论】:

    • 我现在明白了.. 谢谢你的帮助!
    • 简单得多 date + str3 + date1date + '-' + date1
    【解决方案2】:

    date 是一个数字。 Number 没有 concat 功能。将其转换为字符串。

    function myFunction() {
    
        var d = new Date();
        var n = d.getFullYear();
        var date = document.getElementById("demo").innerHTML = n+""; // convert to string
        
        var d1 = new Date();
        var n1 = d1.getFullYear()+1;
        var date1 = document.getElementById("demo1").innerHTML = n1+"";
        
        var str3 = "-";
        var res = date.concat(str3,date1);
        document.getElementById("disp").innerHTML = res;
    
    }
    <!DOCTYPE html>
    <html>
    <body onload="myFunction()">
    
    <p>Click the button to display the full year of todays date.</p>
    
    
    <p id="demo"></p>
    <p id="demo1"></p>
    <p id="disp"></p>
    
    
    
    </body>
    </html>

    【讨论】:

      【解决方案3】:

      String.prototype.concat()

      强烈建议使用字符串连接运算符 (+, +=) 出于性能原因而不是这种方法

       var res = date + str3 + date1;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-02-12
        • 2015-08-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-05-18
        • 2020-08-08
        相关资源
        最近更新 更多