(javascript) 在数组内的 object 上调用方法
(javascript) Calling a method on an object inside an array
我不确定我是否正确命名了标题。让我解释一下我的小问题。
我的代码片段很短:
var myArray= new Array([new Date()],[123],[abc]);
var time = myArray[0].getTime()
我想把数组里面object保存的时间写到"time"变量中。
我只是认为这会起作用,但我收到错误消息。
Uncaught TypeError: myArray[0].getTime is not a function
显然我做错了,但我不知道问题是什么以及如何正确地做。
它在另一个数组中:
var time = myArray[0][0].getTime();
// ^^^
工作示例:
var myArray = new Array([new Date()], [123], ['abc']),
time = myArray[0][0].getTime();
alert(time);
您定义数组数组 [[]、[]、[]],因此要获取日期元素,您应该这样做:
var myArray= new Array([new Date()],[123],['abc']);
var time = myArray[0][0].getTime();
您使用的代码创建了一个包含数组的数组:
var myArray= new Array([new Date()],[123],[abc]); // [[new Date()],[123],[abc]]
所以你必须打电话给
myArray[0][0].getTime()
你可能想做
var myArray = new Array(new Date(),123,abc); // [new Date(),123,abc]
或者干脆
var myArray = [new Date(),123,abc];
作为提示,当您遇到这些错误时,请尝试 console.log
变量。你会看到你期望的日期实际上是一个只有一个位置的数组,并且很容易发现错误:)
我不确定我是否正确命名了标题。让我解释一下我的小问题。
我的代码片段很短:
var myArray= new Array([new Date()],[123],[abc]);
var time = myArray[0].getTime()
我想把数组里面object保存的时间写到"time"变量中。 我只是认为这会起作用,但我收到错误消息。
Uncaught TypeError: myArray[0].getTime is not a function
显然我做错了,但我不知道问题是什么以及如何正确地做。
它在另一个数组中:
var time = myArray[0][0].getTime();
// ^^^
工作示例:
var myArray = new Array([new Date()], [123], ['abc']),
time = myArray[0][0].getTime();
alert(time);
您定义数组数组 [[]、[]、[]],因此要获取日期元素,您应该这样做:
var myArray= new Array([new Date()],[123],['abc']);
var time = myArray[0][0].getTime();
您使用的代码创建了一个包含数组的数组:
var myArray= new Array([new Date()],[123],[abc]); // [[new Date()],[123],[abc]]
所以你必须打电话给
myArray[0][0].getTime()
你可能想做
var myArray = new Array(new Date(),123,abc); // [new Date(),123,abc]
或者干脆
var myArray = [new Date(),123,abc];
作为提示,当您遇到这些错误时,请尝试 console.log
变量。你会看到你期望的日期实际上是一个只有一个位置的数组,并且很容易发现错误:)