Sumber daya yang dimuat... Pemuatan...

Fungsi getposition ini memberikan error tanpa posisi

Penulis:Xiaoxiaolu, Dibuat: 2018-04-12 16:36:42, Diperbarui:

Bagaimana cara debugnya? Jika akun tidak memiliki posisi, gunakan kode berikut untuk mendapatkan informasi posisi while ((true) { var position=_C (exchange.GetPosition)

jika (posisi == null) { lanjutkan Aku tidak tahu. type=position[0].Type if ((type ==PD_LONG) { Jika (excell!==sellPrice) CancelPendingOrders (Inggris) exchange.SetDirection (closebuy) exchange.Sell ((sellPrice,position[0].Amount) Saya ingin tahu apa yang terjadi. Aku tidak tahu. Aku tidak tahu. Ketika akun tidak memiliki posisi, getposition yang diperoleh seharusnya merupakan sebuah empty array, jadi akan melakukan continuue dalam pernyataan if untuk memulai kembali siklus, tetapi tes disk tetap memberikan kesalahan. TypeError: cannot read property Type of undefined at main (Tip kesalahan: tidak dapat membaca properti)File:129)

Saya mencoba mengubah kondisi di if, seperti position[0]==null atau typeof(position) ==undefined tidak berhasil atau akan melakukan penargetan type=position[0].

Bagaimana cara mengatasi masalah ini?


Lebih banyak

xionglonghuiSolusi adalah sebagai berikut: Var position = _C (exchange.GetPosition); if ((position.length>0) Aku tidak tahu. // Silakan masukkan kode ke dalam tanda kurung besar ini. Prinsipnya adalah sebagai berikut: Pertama-tama menentukan panjang array yang dikembalikan oleh fungsi penahan ini, jika panjangnya lebih besar dari 0, berarti ada informasi penahan, tidak bisa langsung menggunakan null, undefine. Kemudian Anda dapat mengakses position[0] Aku tidak tahu.

YumountSaya mengalami masalah yang sama, dan merasa perlu untuk mengatur fungsi yang dapat menerima kesalahan secara terpisah untuk exchange.GetPosition, karena jika tidak, fungsi ini hampir tidak dapat digunakan tanpa penyimpanan. Di sisi lain, tanyakan pada pemilik rumah bagaimana akhirnya hal itu diselesaikan.

Penemu Kuantitas - Mimpi KecilSetelah melihat posting, saya menemukan masalah, ketika Anda memanggil exchange.GetPosition (()) jika Anda tidak memegang, itu akan mengembalikan [], sebuah array kosong, yang tidak sama dengan null, itu adalah keputusan Anda. Ketika position == null, itu adalah false, jadi tidak akan memicu continue, dan kemudian Anda mengakses position[0] elemen ini tidak ada, jadi undefine, kemudian memanggil sifat Type nya akan memberikan kesalahan.