Company logo
  • Jobs
  • Bootcamp
  • About Us
  • For professionals
    • Home
    • Jobs
    • Courses and challenges
    • Questions
    • Teachers
    • Bootcamp
  • For business
    • Home
    • Our process
    • Plans
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Calculator

0

82
Views
How to differentiate between list and objects in Javascript?

Function returns the type of object

 function objOrLis(obj) {
    if (typeof obj == "object") {
        poss = "object"
        try {
            for (let i of obj) {
                poss = "list"
            }
        }
        catch {
            poss = "object"
        }
        return poss
    }
    else {
        let c = typeof obj
        return c
    }
}
7 months ago · Juan Pablo Isaza
3 answers
Answer question

0

Use Array.isArray() to identify arrays:

function objOrLis(obj) {
  return Array.isArray(obj)
    ? 'list'
    : typeof obj
}

console.log(objOrLis([]))
console.log(objOrLis({}))
console.log(objOrLis(1))
console.log(objOrLis('str'))

7 months ago · Juan Pablo Isaza Report

0

Object.prototype.toString gives different results

const array = [1,2,3];
const set = new Set(array);
const map = {a:1,b:2,c:3};

console.log(Object.prototype.toString.call(array));
console.log(Object.prototype.toString.call(set));
console.log(Object.prototype.toString.call(map));

7 months ago · Juan Pablo Isaza Report

0

An ES6 one liner to differentiate between an array and an object.

const objectOrList = (o) => (o instanceof Array ? "list" : (o instanceof Object ? "object" : typeof o))

const objectOrList = (o) => (o instanceof Array ? "list" : (o instanceof Object ? "object" : typeof o));

console.log(objectOrList([]));
console.log(objectOrList({}));
console.log(objectOrList(1));
console.log(objectOrList("string"));

7 months ago · Juan Pablo Isaza Report
Answer question
Find remote jobs