συστοιχίες χύτευσης γραφομηχανή

ψήφοι
22

Προσπαθώ να χρησιμοποιήσετε ένα περιτύλιγμα για μια βιβλιοθήκη που θέλει έναν πίνακα ως παράμετρο εισόδου.

Προσπάθησα χύτευση την Array, αλλά παίρνω ένα σφάλμα: Δεν είναι δυνατή η μετατροπή «κάθε []» σε «Array»

Είναι ένας τρόπος για να γίνει αυτό το έργο εκεί;

var rows = new Array(10);
var rows2 = <Array>rows; //<--- Cannot convert 'any[]' to 'Array'
Δημοσιεύθηκε 09/10/2012 στις 05:12
πηγή χρήστη
Σε άλλες γλώσσες...                            


4 απαντήσεις

ψήφοι
33

Υπάρχουν 4 πιθανές μεθόδους μετατροπή σε γραφομηχανή για πίνακες:

let x = []; //any[]

let y1 = x as number[];
let z1 = x as Array<number>;
let y2 = <number[]>x;
let z2 = <Array<number>>x;

Ο asφορέας εκμετάλλευσης είναι κυρίως σχεδιασμένο για *.tsxαρχεία για να αποφευχθεί η ασάφεια σύνταξη.

Απαντήθηκε 03/02/2016 στις 16:09
πηγή χρήστη

ψήφοι
6

Νομίζω ότι η σωστή σύνταξη είναι:

var rows2 = <Array<any>>rows;

Αυτό είναι το πώς θα ρίξει στην interface Array<T>

Απαντήθηκε 03/02/2016 στις 15:10
πηγή χρήστη

ψήφοι
4

Νομίζω ότι αυτό είναι απλά ένα bug - μπορείτε να συνδεθείτε ένα ζήτημα σχετικά με το site CodePlex;

Ως λύση, μπορείτε να γράψετε <Array><any>rows?

Απαντήθηκε 09/10/2012 στις 05:33
πηγή χρήστη

ψήφοι
0

Μια απλή λύση για όλους τους τύπους

const myArray = <MyType[]>value;
Απαντήθηκε 02/01/2019 στις 21:12
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more