Javascript:我可以根据提示输入在数组中找到数字的索引吗
Javascript: Can I find the index of a number in an array based on a prompt input?
有没有一种方法可以使用提示中的输入作为数组的索引,然后创建一个没有这个数字的新数组?
到目前为止,我得到的指数是-1:
var remNum = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var input = prompt("pick a number" + " ");
var position = remNum.indexOf(input);
alert("this is the index of your input: " + position);
您需要将用户输入转换为数字,因为prompt()
返回一个String。
var remNum = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var input = parseInt(prompt("pick a number" + " "), 10);
var position = remNum.indexOf(input);
alert("this is the index of your input: " + position);
请注意,对于调试代码,console.log()
(作为浏览器附带的更大的开发工具套件的一部分)比alert()
更有效。
var input = parseInt(prompt("pick a number" + " "), 10); //convert to int!
var newArray = [];
for (var i=0; i<remNum.length; i++) {
if (i != input) newArray.push(remNum[i]);
}
这将在数组中循环,并推送所有没有提示索引的数字。它还将确保输入不会超出边界。
将输入转换为整数后:
var remNum = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var input = parseInt(prompt("pick a number" + " "));
您可以使用splice()
删除元素:
var position = remNum.indexOf(input);
remNum.splice(position, 1);
错误检查留给读者练习。
相关文章:
- 测试索引值是否等于某个数字的倍数
- Angular js+ng repeat+字母数字索引不起作用
- 如果数字已插入排序数组,则获取该数字的索引
- for.in循环在非数字索引“clean”和“remove”上循环
- Javascript中的非数字索引多维数组
- 在数字索引循环中获取数组项的键
- 在数字索引处放置行 - SQL
- 通过 ajax 发送带有字母数字索引名称的数组
- 在数组中添加和减去数字索引值的类型转换
- 通过数字索引创建数组而不推入数组
- 非数字索引数组的长度
- 使用javascript从数组中筛选出数字索引
- 正在检查javascript数组中的数字索引
- 计数具有'仅限非数字索引'没有for在循环中
- Javascript数组与数字索引没有未定义
- 如何在javascript中获得关联数组中等效键的数字索引
- 循环对象属性vs数字索引数组
- 正在获取忽略数字索引的子字符串
- JS:将两个JSON对象合并为一个,但不制作数字索引
- javascript在使用数字索引分配数组值时是否调用. tostring ?