getposition hàm này trả lời sai nếu không có vị trí

Tác giả:Jiaozheng, Tạo: 2018-04-12 16:36:42, Cập nhật:

Tôi muốn hỏi bạn, làm thế nào để bạn giải quyết vấn đề? Nếu tài khoản không có vị trí, hãy sử dụng mã sau để lấy thông tin vị trí while ((true) { var position=_C ((exchange.GetPosition)

if ((position==null) { tiếp tục type=position[0].Type if ((type==PD_LONG) { if ((exsell!==sellPrice) { CancelPendingOrders (tạm dịch: Hủy lệnh đang chờ)) exchange.SetDirection (closebuy) exchange.Sell ((sellPrice,position[0].Amount) Exsell=SellPrice Khi không có vị trí trong tài khoản, getposition được lấy nên là một mảng trống, vì vậy sẽ thực hiện một lệnh tiếp tục trong câu if để lặp lại, nhưng thử nghiệm thực vẫn trả lại lỗi. TypeError: cannot read property Type of undefined at main (Type của undefined at main)ĐIU:129)

Tôi đã cố gắng thay đổi các điều kiện trong if, chẳng hạn như position[0]==null hoặc typeof(position) ==undefined không hoạt động hoặc sẽ thực hiện type=position[0].Type bar sẽ trả lại lỗi.

Làm thế nào để giải quyết vấn đề này?


Thêm nữa

XionglonghuiMột số người cho rằng, "Điều này là một vấn đề lớn". var position = _C ((exchange.GetPosition); if ((position.length>0) {C:$0000FF} // Vui lòng đặt mã trong dấu ngoặc lớn này. Nguyên tắc là: Trước tiên xác định chiều dài của mảng mà hàm giữ này trả về, chiều dài lớn hơn 0, cho thấy có thông tin giữ, không thể xác định trực tiếp bằng null, undefine. Sau đó bạn có thể truy cập position[0] ♪

YumountKhi gặp phải cùng một vấn đề, tôi cảm thấy cần thiết phải thiết lập một hàm nhịn lỗi riêng cho exchange.GetPosition, nếu không, hàm này hầu như không thể sử dụng được nếu không có lưu trữ. Nhân tiện, hãy hỏi chủ nhà, cuối cùng nó đã được giải quyết như thế nào.

Giấc mơ nhỏSau khi xem bài viết, tôi đã tìm thấy vấn đề, khi bạn gọi exchange.GetPosition (()) nếu bạn không giữ, nó sẽ trả về [], một mảng trống, mảng trống này không bằng null, đó là quyết định của bạn. Khi position == null, là false, do đó sẽ không kích hoạt continue, sau đó bạn truy cập position[0] phần tử này không tồn tại, do đó undefine, gọi lại thuộc tính Type của nó sẽ trả lại lỗi.