我有两种类型的字符串作为HTML标记中元素的ID:

日期:

"april-23"
"march-20"


和季节名称:

"springtime"
"winter"


日期用破折号分隔月份和日期。

季节是一个单词,没有其他标记。

我想将月份或季节分配给一个新变量,称为:

time_of_year


如果我这样做:

var time_of_year = $(this).attr("id").split('-')[0];


它可以在月份中使用,但是如果我以不包含令牌的季节名称进行调用,会产生错误吗?

安全的方法是什么?

最佳答案

它不会返回错误,但是会返回长度为1的数组。

您可以执行以下操作:

var splitty = $(this).attr('id').split('-');
if (splitty.length > 1) {
   time_of_year = splitty[0];
}
else {
   // do something else magical here
}


这是split上的文档。

但是,如果您始终想要第一个值,而不关心其他值,则可以使用没有问题的原始代码:

var time_of_year = $(this).attr('id').split('-')[0]

关于javascript - 如何在不引起错误的情况下在不包含 token 的字符串上调用split(token)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1154496/

10-10 15:18