我是javascript的新手,所以我相对肯定我在这里遗漏了一些东西,但我的谷歌搜索没有发现任何东西。
var addDate = function(image) {
// Get the name
var imName = image.get('system:index');
//Convert name to date number
var imDate=imName;
var dateArray=imDate.split('-');
var months = ['', 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
if (imDate[1]<10) {
date[1]= imDate[1].slice(1);
}
var dateFormatted = months[date[1]] + ' ' + date[2] + ', ' + date[0];
var dateNum = Date.parse(dateFormatted);
//set date in metadata
return image.set({properties: {date_range: dateNum}});
};
image_dated=addDate(image);
我收到错误:
imDate.split is not a function
in addDate(), line 7
in <global>, line 20
我已经确认imName确实返回一个格式为'YYYY-DD-MM'的字符串。
感谢您的帮助。
答案 0 :(得分:1)
因为您没有字符串变量的定义值,您必须定义一个值并接下来传递给您的函数:
var myFunction = function(string) {
return string.split('-');
}
var string='1-2';
var myReturnedValud = myFunction(string);
或直接将值作为参数传递
var myReturnedValud = myFunction('1-2');
此外,请避免使用字符串或数字等名称或javascript使用的任何类型名称。
var myFunction = function(str) {
return str.split('-');
}
答案 1 :(得分:0)
不要使用字符串,数字等。在参数中使用另一个名称。例如str,num等
答案 2 :(得分:0)
我在Firefox控制台上运行此代码并且运行正常
var string='1-2';
var myFunction = function(string) {
return string.split('-');
}
myFunction(string);