voglio essere in grado di passare una stringa letteraleDeterminare se un oggetto JavaScript è un oggetto "complesso" o semplicemente una stringa
'this is a string'
o un oggetto JavaScript,
{one: 'this', two: 'is', three: 'a', four: 'string' }
come argomento di una funzione e intraprende azioni diverse a seconda che si tratti di una stringa o di un oggetto. Come posso determinare quale è vero?
Per essere precisi, voglio eseguire un'iterazione sulle proprietà di un oggetto e analizzare se una proprietà è una stringa, ma annidare ricorsivamente se la proprietà è un oggetto. Ho capito come usare $.each()
per iterare sulle proprietà dell'oggetto, ma se lo faccio con la stringa, tratta la stringa come una matrice di lettere piuttosto che come una singola cosa. Posso aggirare questo in un altro modo?
A chiunque si chieda perché ho contrassegnato questa risposta corretta piuttosto che una di quelle con più voti: in questa risposta c'è un suggerimento su come soddisfare le mie esigenze usando jQuery, il che significa che non devo scrivere (o capire in dettaglio) qualsiasi implementazione per usarlo. Questa risposta offre anche buone opzioni per coprire funzioni e array. –