Đây là lỗi thực sự kỳ lạ mà gần đây tôi đã gặp trong CF9. Bất cứ ai cũng có một đầu mối tại sao nó xảy ra và nếu tôi đang làm điều gì đó sai, hoặc có một hotfix có sẵn. Nhìn vào đoạn mã sau. Chúng tôi lấy một chuỗi, thêm một A, thêm một B, và sau đó cố gắng để thêm một C ... nhưng kết quả chúng tôi nhận được là "ababc". Kết quả mong đợi là "abc". Lỗi này chỉ xảy ra nếu bạn thực hiện một đối số được đặt tên VÀ một cấu trúc ngầm trong đối số vượt qua VÀ toán tử &=
trong lệnh gọi hàm. Nếu bất kỳ trường hợp nào trong số 3 trường hợp này không có, lỗi đó không xảy ra. Bất kỳ ý tưởng tại sao?Lỗi kỳ lạ với các đối số được đặt tên và tạo cấu trúc ngầm trong hàm gọi
<cffunction name="test">
<cfargument name="widget">
<cfset var locals = StructNew()>
<cfreturn arguments.widget.value>
</cffunction>
<cfset return = "">
<cfset return &= "a">
<cfset return &= "b">
<cfset return &= test(widget = { value = "c" })>
<cfoutput>#return#</cfoutput>
Chà, điều đó rất lạ. Hãy báo cáo lỗi với Adobe. –
Đã thực sự http://cfbugs.adobe.com/cfbugreport/flexbugui/cfbugtracker/main.html#bugId=87217. xem nếu tôi t biến bất cứ điều gì lên. – Nucleon
trả về "abc" trong sổ ghi chép của tôi, XP SP2, Nhà phát triển Máy chủ ColdFusion 9.0.0,251028 – tsurahman