kzen.dev
  • Klausimai
  • Žymos
  • Vartotojai
Pranešimai
Apdovanojimai
Registracija
Užsiregistravę gausite pranešimus apie atsakymus ir komentarus į savo klausimus.
Prisijungti
Jei jau turite paskyrą, prisijunkite ir patikrinkite naujus pranešimus.
Už pridėtus klausimus, atsakymus ir komentarus bus skiriami apdovanojimai.
Daugiau
Šaltinis
Redaguoti
Andy McCluggage
Andy McCluggage
Question

Kaip "JavaScript" programoje patikrinti, ar kintamasis yra masyvas?

Norėčiau patikrinti, ar "JavaScript" kintamasis yra masyvas, ar viena reikšmė.

Radau galimą sprendimą...

if (variable.constructor == Array)...

Ar tai geriausias būdas tai padaryti?

1707 2009-04-20T09:02:59+00:00 3
Programavimas
arrays
javascript
variables
Popular videos
meteor.js by Roger Zurawicki
meteor.js by Roger Zurawicki
prieš 10 metų
Section 9
Section 9
prieš 9 metus
From C to Python by Ross Rheingans-Yoo
From C to Python by Ross Rheingans-Yoo
prieš 7 metus
Pirma pamoka (programavimas internete c++ )
Pirma pamoka (programavimas internete c++ )
prieš 4 metus
How to check if a variable is an array in JavaScript
How to check if a variable is an array in JavaScript
prieš 3 metus
How to Check if Variable is Array in Javascript
How to Check if Variable is Array in Javascript
prieš 3 metus
How to check if a variable is Array in JavaScript
How to check if a variable is Array in JavaScript
prieš 5 metus
Programavimas C++ 11 #27 - Vienmačio masyvo reikšmių išvedimas
Programavimas C++ 11 #27 - Vienmačio masyvo reikšmių išvedimas
prieš 7 metus
Javascript 15 - IF/ELSE sąlyga
Javascript 15 - IF/ELSE sąlyga
prieš 10 metų
Programavimas C++ 11 #22 - Do while ciklas
Programavimas C++ 11 #22 - Do while ciklas
prieš 7 metus
Java programavimo pamoka 15 - if alternatyva
Java programavimo pamoka 15 - if alternatyva
prieš 11 metų
2012 m. egzamino 1 praktinė užduotis Krepšinis
2012 m. egzamino 1 praktinė užduotis Krepšinis
prieš 4 metus
C++ pamokos. Įvadas į funkcijas
C++ pamokos. Įvadas į funkcijas
prieš 4 metus
Programavimas C++ 11 #21 - While ciklas
Programavimas C++ 11 #21 - While ciklas
prieš 7 metus
Exploring JavaScript and the Web Audio API by Sam Green and Hugh Zabriskie
Exploring JavaScript and the Web Audio API by Sam Green and Hugh Zabriskie
prieš 7 metus
C++ pamokos. Struktūra (pavyzdžiai)2
C++ pamokos. Struktūra (pavyzdžiai)2
prieš 4 metus
Section 8
Section 8
prieš 9 metus
C++ pamokos - 17 - Duomenų tipai ir kintamieji (4 dalis)
C++ pamokos - 17 - Duomenų tipai ir kintamieji (4 dalis)
prieš 10 metų
« Ankstesnis
Kitas »
Šis klausimas turi 1 atsakymas atsakymų anglų kalba, norėdami juos perskaityti prisijunkite prie savo paskyros.
Brett Bender
Brett Bender
priešpietr balandis 2009 в 9:05
2009-04-20T09:05:46+00:00
Daugiau
Šaltinis
Redaguoti
#8990257

Taip pat galite naudoti:

if (value instanceof Array) {
  alert('value is Array!');
} else {
  alert('Not an array');
}

Man atrodo, kad tai gana elegantiškas sprendimas, bet kiekvienam savo.

Redaguoti:

Nuo ES5 dabar taip pat yra:

Array.isArray(value);

Tačiau senesnėse naršyklėse tai neveikia, nebent naudojate polipinius papildymus (iš esmės... IE8 ar panašiai).

Brett Bender
Brett Bender
Redaguotas atsakymas popietr rugpjūtis 2017 в 8:41
1037
0
Do you have a question? Add it on the site and get an answer instantly
en.kzen.dev
Peter Smit
Peter Smit
priešpietr balandis 2009 в 9:08
2009-04-20T09:08:08+00:00
Daugiau
Šaltinis
Redaguoti
#8990260

Yra daugybė sprendimų, turinčių savo ypatumų. Šiame puslapyje pateikiama gera apžvalga. Vienas iš galimų sprendimų:

function isArray(o) {
  return Object.prototype.toString.call(o) === '[object Array]'; 
}
Brad Larson
Brad Larson
Redaguotas atsakymas popietr spalis 2015 в 7:31
78
0
Do you have a question? Add it on the site and get an answer instantly
en.kzen.dev
Hank Gay
Hank Gay
priešpietr balandis 2009 в 9:07
2009-04-20T09:07:33+00:00
Daugiau
Šaltinis
Redaguoti
#8990259

Per Crockford:

function typeOf(value) {
    var s = typeof value;
    if (s === 'object') {
        if (value) {
            if (value instanceof Array) {
                s = 'array';
            }
        } else {
            s = 'null';
        }
    }
    return s;
}

Pagrindinis Crockfordo minimas trūkumas yra nesugebėjimas teisingai nustatyti masyvų, kurie buvo sukurti kitame kontekste, pvz., window.

Tame puslapyje yra daug sudėtingesnė versija, jei to nepakanka.

Remedial JavaScript
javascript.crockford.com
47
0
Pridėti klausimą
Kategorijos
Visi
Technologijos
Kultūra / poilsis
Gyvenimas / Menai
Mokslas
Profesionalus
Verslas
Vartotojai
Visi
Naujas
Populiarus
1
Александр Македонский
Registruota prieš 1 dieną
2
Andrei Kalinin
Registruota prieš 2 savaites
3
Koroleva Ego
Registruota prieš 1 mėnesį
4
Star Lenon
Registruota prieš 1 mėnesį
5
Данил Жевнеров
Registruota prieš 1 mėnesį
Do you have a question? Add it on the site and get an answer instantly
en.kzen.dev
DA
DE
EL
ES
FI
FR
ID
IT
JA
LT
NL
NO
PT
RO
RU
SK
TR
ZH
© kzen.dev 2023
Šaltinis
stackoverflow.com
pagal licenciją cc by-sa 3.0 nurodant autorystę