【问题标题】:Javascript string construction by concatenation?通过连接构造Javascript字符串?
【发布时间】:2011-10-15 19:39:30
【问题描述】:

探索 Javascript(来自 Java 世界)。我在脚本中有以下代码行:

if (jQuery) {  
    document.getElementById("BOTTOM_MID").innerHTML
        = "JQuery Loaded - " + getTime();
}

但它不起作用。 BOTTOM_MID 未初始化。然而,以下工作:

if (jQuery) {  
    document.getElementById("BOTTOM_MID").innerHTML
        = "JQuery Loaded";
}

难道 Javascript 不能通过连接来理解字符串构造吗?如果是,我应该如何进行?

【问题讨论】:

  • getTime 是否在别处定义?它不是 javascript 默认函数

标签: javascript string concatenation construction


【解决方案1】:

getTime()Date 对象的一个​​方法。试试这个:

if (jQuery) {  
    document.getElementById("BOTTOM_MID").innerHTML
        = "JQuery Loaded - " +  new Date().getTime();
}

由于你使用的是 jQuery,我也建议你使用 jQuery 的 ready() 处理程序和选择器:

$(document).ready(function() {
    $("#BOTTOM_MID").html("JQuery Loaded - " +  new Date().getTime());
});

这里是a working fiddle

【讨论】:

  • 稍微更缩写的方式是(+new Date)
  • 真;我只是提到它。
  • @icktoofay Date.now() FTW
  • Date.now() 在 IE 中不受支持(可能是 IE9,但绝对不是早期版本)
  • Date.now = Date.now || function() { return +new Date; };
【解决方案2】:

您的代码看起来不错,尝试在您的 chrome 开发人员工具或 firebug 的控制台上运行它,在此网页中:

 document.getElementById("notify-container").innerHTML = "JQuery Loaded - " + "hello"

确实可以。

也许您没有定义getTime()?顺便说一句,这不是标准的 javascript 函数

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-24
    • 1970-01-01
    • 2017-02-18
    • 2022-12-04
    • 1970-01-01
    • 1970-01-01
    • 2018-04-30
    相关资源
    最近更新 更多