Hướng dẫn python call function with square brackets - chức năng gọi python với dấu ngoặc vuông

À, tôi nghĩ rằng câu hỏi này đã trả lời gần đây của tôi, nhưng tôi muốn mở rộng câu trả lời một số:

Cuộc gọi này:

var value = getUrlVars[]["logout_url"];

Cuối cùng, sẽ đặt biến thành giá trị của cặp tên-tên-tên-tên 'Logout_URL' được trả lại từ lệnh gọi hàm thành 'getUrlVars []', phải không? Vì vậy, bạn không phải sử dụng chỉ một chỉ mục số, nó có thể được sử dụng trên các mảng băm/liên kết/từ điển/vv kết quả từ hàm.

Vì vậy, nếu đây là chức năng 'geturlvars':

function getUrlVars[] {
    var vars = {};
    var parts = window.location.href.replace [/[?&]+[[^=&]+]=[[^&]*]/gi, function[m,key,value] {
            vars[key] = value;
        }
    ];
    return vars;
}

Đang trả về các cặp giá trị khóa [từ URL đầu vào của "" //a.place.com/page.html?name=fred&place=b3&logout_url=some.thing.net/go/here/file.html "], ví dụ.:

'name'='fred',
'place'='b3',
'logout_url'='some.thing.net/go/here/file.html'         ']   # Prints ''
2, thì bất kỳ mã hiện tại nào sử dụng hàm và truyền tham số đó theo tên sẽ bị phá vỡ.

Điều đó là đủ công bằng, rất hữu ích khi có tham số

getUrlVars[]["name"]
0 và giá chúng tôi phải trả cho lợi ích đó là chúng tôi không thể thay đổi ngẫu nhiên tên tham số mà không có hậu quả.

Nhưng những gì về tham số

'name'='fred',
'place'='b3',
'logout_url'='some.thing.net/go/here/file.html'         

Bài Viết Liên Quan

Chủ Đề