检查数组,如果每 2 个元素缺少一个值
Check array and if one value missing every 2 elements
我有一个来自字符串的数组。
当我从字符串中获取值时,我拆分字符串,这样我就得到了一个数组。
如果我下令:
.command 12 Test 1 Test1 2 Test3 and so on
然后我得到:['12', 'Test', '1', 'Test1', '2', 'Test3']
这很好,但我不知道如何检查 12、1、2 是整数还是普通文本,以及数字后面是否有人也提供了文本。
当然我可以在 If 语句中做,但那会是很长的代码。
- 所以我需要检查第一个值是否为数字
- 我需要检查第一个给出的值,然后该成员是否也给了机器人一个文本。
- 第三个值是否为数字
- 第四个值给定与否
- 以此类推
我该怎么做?
这将检查第一个数字是否为数字。如果是,那么它将检查下一个值是否为字符串。希望对你有帮助。
for (let i = 0; i < result.length; i += 2) {
if (isNaN(result[i])) {
// not a number
} else {
if (typeof result[i+1] == 'string') { // 2nd value is a text }
else { // 2nd value not a string }
}
}
我有一个来自字符串的数组。 当我从字符串中获取值时,我拆分字符串,这样我就得到了一个数组。
如果我下令:
.command 12 Test 1 Test1 2 Test3 and so on
然后我得到:['12', 'Test', '1', 'Test1', '2', 'Test3']
这很好,但我不知道如何检查 12、1、2 是整数还是普通文本,以及数字后面是否有人也提供了文本。 当然我可以在 If 语句中做,但那会是很长的代码。
- 所以我需要检查第一个值是否为数字
- 我需要检查第一个给出的值,然后该成员是否也给了机器人一个文本。
- 第三个值是否为数字
- 第四个值给定与否
- 以此类推
我该怎么做?
这将检查第一个数字是否为数字。如果是,那么它将检查下一个值是否为字符串。希望对你有帮助。
for (let i = 0; i < result.length; i += 2) {
if (isNaN(result[i])) {
// not a number
} else {
if (typeof result[i+1] == 'string') { // 2nd value is a text }
else { // 2nd value not a string }
}
}