Saya ingin tahu bagaimana untuk membetulkan masalah ini. Jika akaun anda tidak mempunyai kedudukan, gunakan kod berikut untuk mendapatkan maklumat kedudukan while ((true) { var position=_C (exchange.GetPosition)
if ((position==null) {
teruskan
{C:$0000FF}
type=position[0].Type
if ((type ==PD_LONG) {
jika (excell!==sellPrice) {
CancelPendingOrders (Menghentikan Perintah Terhad)
exchange.SetDirection ((
Saya cuba mengubah syarat dalam if, seperti position[0]==null atau typeof ((position) ==undefined tidak berfungsi atau akan menjalankan tag type=position[0].
Bagaimana untuk menyelesaikan masalah ini?
XionglonghuiPenyelesaian adalah sebagai berikut: var position = _C ((exchange.GetPosition); if ((position.length>0) {C:$0000FF} // Sila letakkan kod di dalam kurung besar ini. Prinsipnya adalah sebagai berikut: Pertama, tentukan panjang array yang dikembalikan oleh fungsi penahan ini, jika panjangnya lebih besar daripada 0, maka terdapat maklumat penahan, tidak boleh langsung menggunakan null, undefine. Kemudian anda boleh mengakses position[0] {C:$0000FF}
YumountSaya mengalami masalah yang sama, dan saya merasa perlu untuk menetapkan fungsi yang boleh menerima ralat secara berasingan untuk exchange.GetPosition, jika tidak, fungsi ini hampir tidak dapat digunakan tanpa penyimpanan. Oleh itu, sila tanya tuan rumah bagaimana ia diselesaikan.
Pencipta Kuantiti - Impian KecilSetelah melihat catatan, saya mendapati masalah, apabila anda memanggil exchange.GetPosition (()) jika anda tidak memegang, ia akan mengembalikan [], satu set kosong, yang set kosong ini tidak sama dengan null, anda yang memutuskan. Apabila posisi == null, itu adalah salah, jadi tidak akan mencetuskan terus, dan kemudian anda pergi ke posisi[0] elemen ini tidak wujud, jadi undefine, dan memanggil semula sifat Type-nya akan memberikan kesalahan.