javascript - 检查输入是否为数组,并打印结果
问题描述
代码没有返回预期的结果:如果它是“checkArray” div 上的数组,我想返回“true”,如果不是,则返回“false”,具体取决于用户输入。
<input type="text" id="data" placeholder="Insert data">
<button type="submit" onclick="checkArray()">Check</button>
<div id="checkArray"></div>
<script>
function is_array(data) {
if (data instanceof Array) {
return true;
} else {
return false;
}
};
function checkArray() {
var data = document.getElementById("data").value;
document.getElementById("checkArray").innerHTML = is_array(data);
}
解决方案
如果您只是在输入值的开头和结尾寻找打开和关闭数组括号,则可以用is_array(data)
下面的代码替换您的函数。尽管您的输入值的类型无论如何都是字符串。
function is_array(data) {
return data[0] + data[data.length - 1] === "[]"
}
推荐阅读
- php - 未定义的索引:使用 laravel 导入 CSV 文件时的 bsd
- python - 如何根据多列中的匹配值聚合行?
- asp.net - Kendo Grid Core - 循环通过网格中的开关
- python - 在点周围创建网格的 numpy 有效方法
- typescript - Typescript 未知类型不能与 ? 一起使用。操作员
- javascript - 以不可变的方式更新其值是对象数组的对象
- java - java中由ExceptionInitializerError引起的InvocationTargetException是什么意思?
- string - 无法将浮点数连接到字符串
- sparql - 优化 SPARQL 查询性能问题
- javascript - 为什么删除类不起作用?