推送到附加了单引号的数组元素

pushing to array element appended with single quote

本文关键字:单引号 数组元素      更新时间:2023-09-26

以下变量被评估并添加到数组元素中,在打印数组时得到一个引号,如何避免这种情况,这里是代码

var t1 = "Date.UTC("+varDate[0]+','+varDate[1]+','+varDate[2]+")"
console.log(t1)

输出为

Date.UTC(2001,1,23)

然后将t1添加到阵列

 diffArray.push(t1)
    console.log(t1)

为什么附加了一句话?如何避免这种情况?

[ 'Date.UTC(2001,1,23)']

这只是console.log()向您显示数组中的项是一个字符串。您的t1变量一直是一个字符串,所以内部表示没有区别,只是console.log()选择如何显示它。

如果执行console.log(diffArray[0]),您将看到没有引号的原始表示,因为当您给它一个纯字符串时,console.log()就是这样做的。当您给console.log()一个数组时,它会在任何字符串元素周围加引号,以指示字符串与数组可能包含的其他类型之间的差异。

在控制台中查找此jsFiddle:http://jsfiddle.net/jfriend00/yrannpm2/

console.log(t1);             // Date.UTC(2001,1,23)
console.log(diffArray[0]);   // Date.UTC(2001,1,23)
console.log(diffArray);      // ["Date.UTC(2001,1,23)"]