我正在使用nodejs在Api上工作,我想将字符串格式[10,20]转换为数组。
例如
//我的同事给我发送了字符串
employee_id : [ 10, 20 ];
我检查
if(Array.isArray(employee_id) || employee_id instanceof Array){
}
它不起作用
然后我尝试typeof employee_id; it's return string
如何将格式字符串更改为数组
答案 0 :(得分:2)
在比较之前将结果解析为JSON。
const employees = JSON.parse(employee_id)
if(Array.isArray(employees) {
}
这可能会对您有所帮助。
答案 1 :(得分:1)
您可以尝试使用JSON.parse()
:
JSON.parse()
方法解析一个JSON字符串,构造该字符串描述的JavaScript值或对象。
if(Array.isArray(JSON.parse(employee_id)) || JSON.parse(employee_id) instanceof Array){
}
演示:
var obj = {employee_id : '[ 10, 20 ]'};
console.log(typeof obj.employee_id);//string
if(Array.isArray(JSON.parse(obj.employee_id)) || JSON.parse(employee_id) instanceof Array){
console.log('array')
}
答案 2 :(得分:0)
API返回JSON字符串, 因此,您必须将字符串解析为JSON对象以检查实际数据类型。
if(Array.isArray(JSON.parse(employee_id)) || JSON.parse(employee_id) instanceof Array){
}