Điều gì sẽ là cách thành ngữ nhất để làm như sau trong javascript:cách Idiomatic để thiết lập giá trị mặc định trong javascript
Nếu myParam không được thông qua vào MyFunc bởi người gọi, sau đó tôi muốn đặt nó vào một giá trị mặc định . Nhưng trước tiên tôi muốn thử và nhận được nó từ một đối tượng, trong đó có thể chưa tồn tại:
function MyFunc(myParam) {
if (!myParam) {
if (!myObj) {
myParam = 10;
}
else {
myParam = myObj.myParam;
}
}
alert(myParam);
}
tôi bắt đầu viết:
myParam = myParam || myObj.mParam || 10
nhưng nhận ra rằng nếu myObj không tồn tại thì đây sẽ thất bại . Tôi có thể đoán như sau:
myParam = myParam || (myObj && myObj.mParam) || 10
Nó thậm chí có thể hoạt động. Nhưng đó có phải là cách tốt nhất không?
Ví dụ: John Resig làm như thế nào?
myParam = myParam || (myObj || {}). myParam || 10 – Hafthor