Cập nhật tháng 3 năm 2017:
Hỗ trợ URL.searchParams đã chính thức cập bến Chrome 51, nhưng các trình duyệt khác vẫn yêu cầu một polyfill .
Cách chính thức để làm việc với các tham số truy vấn chỉ là thêm chúng vào URL. Từ thông số kỹ thuật , đây là một ví dụ:
var url = new URL("https://geo.example.org/api"),
params = {lat:35.696233, long:139.570431}
Object.keys(params).forEach(key => url.searchParams.append(key, params[key]))
fetch(url).then(/* … */)
Tuy nhiên, tôi không chắc Chrome hỗ trợ thuộc searchParams
tính của URL (tại thời điểm viết bài) nên bạn có thể muốn sử dụng thư viện của bên thứ ba hoặc giải pháp của riêng bạn .
Cập nhật tháng 4 năm 2018:
Với việc sử dụng hàm tạo URLSearchParams, bạn có thể gán một mảng 2D hoặc một đối tượng và chỉ cần gán nó cho url.search
thay vì lặp qua tất cả các khóa và nối thêm chúng
var url = new URL('https://sl.se')
var params = {lat:35.696233, long:139.570431} // or:
var params = [['lat', '35.696233'], ['long', '139.570431']]
url.search = new URLSearchParams(params).toString();
fetch(url)
Sidenote: URLSearchParams
cũng có sẵn trong NodeJS
const { URL, URLSearchParams } = require('url');