- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我有一个代表专辑信息的 JSON 对象。给定“function updateRecords(id, prop, value)”我希望能够更新每个条目。正确的完成代码如下。
我得到了指示,粗体部分,我不明白:
If prop is "tracks" but the album doesn't have a "tracks" property, create an empty array before adding the new value to the album's corresponding property.
解决方案是:
collection[id][prop] = collection[id][prop] || []
所以我将其设置为等于其自身或空白数组?我不明白那里的逻辑。情况:我有一个奇异值,我想分配给一个对象属性。但我希望该值位于数组中,以便以后如有必要可以为其分配更多值。好吧,太好了,我明白了。但是,如果我想创建一个数组,为什么我不能只说 collection[id][prop] = []...“or”的作用是什么?
var collection = {
2548: {
album: "Slippery When Wet",
artist: "Bon Jovi",
tracks: [
"Let It Rock",
"You Give Love a Bad Name"
]
},
2468: {
album: "1999",
artist: "Prince",
tracks: [
"1999",
"Little Red Corvette"
]
},
1245: {
artist: "Robert Palmer",
tracks: [ ]
},
5439: {
album: "ABBA Gold"
}
};
function updateRecords(id, prop, value) {
if(value === "") delete collection[id][prop];
else if(prop === "tracks") {
collection[id][prop] = collection[id][prop] || []; //This line here I don't understand
collection[id][prop].push(value);
} khác {
collection[id][prop] = value;
}
return collection;
}
1 Câu trả lời
||
运算符从给定的操作数中返回第一个 truthy 值。如果collection[id][prop]
有一个数组对象作为其值,那么该数组对象将被视为真实值,并且该值将从表达式返回.
nếu nhưcollection[id][prop]
Đúng未定义
,即缺少数组,那么它将被视为falsy值第二个操作数空白数组对象将被分配给 collection[id][prop]
.
在下面的示例代码片段中,||
运算符返回空白数组对象,因为第一个操作数是 không xác định
,这将被视为falsy值:
const val = undefined || [];
console.log(val);
||
是一个短路运算符,如果第一个操作数是 truthy,它不会检查第二个运算符,而是返回第一个:
const val = [1, 2, 3] || [];
console.log(val)
关于javascript: 集合[id][prop] = 集合[id][prop] || []//将空数组分配给对象时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61565775/
Tôi có một ứng dụng loại bỏ GKSession và tạo một GKSession mới trong nhiều điều kiện khác nhau (hết thời gian kết nối, lỗi phiên, v.v.). Tuy nhiên, tôi đang gặp phải tình trạng rò rỉ bộ nhớ và đôi khi nó bị sập sau khi kết nối lại một vài lần trong vòng lặp.
Ví dụ, nếu tôi có một con trỏ dấu phẩy động float *p trong mã máy chủ, tôi có thể xác định loại bộ nhớ mà nó trỏ tới (thiết bị/máy chủ) không? Câu trả lời tốt nhất nằm trong hệ thống UVA, hàm API thời gian chạy cudaPointerGetAttri
Tôi đã chuyển đổi dự án của mình sang .Net 4.0 và đoạn mã sau không hoạt động: typeof(RuntimeTypeHandle).GetMethod("Allocate", BindingFlags.Instance
Khi tôi khai báo char ch = 'ab', ch chỉ chứa 'b', tại sao nó không lưu trữ 'a'? #include int main() { char ch = 'ab'; printf("%c"
Tôi có một câu hỏi về Disk Sector và Block. Một sector là một đơn vị, thường là 512 byte hoặc 1k, 2k, 4k, v.v. tùy thuộc vào phần cứng. Kích thước khối hệ thống tập tin là một tập hợp các kích thước sector. Giả sử tôi đang lưu trữ 5KB
Giả sử tôi có 8 người và 5000 quả táo. Tôi muốn chia hết số táo cho cả 8 người để không còn quả táo nào sót lại. Nhưng mỗi người sẽ nhận được một số tiền khác nhau và cách tốt nhất để phân phối tất cả số tiền đó là gì? Tôi bắt đầu như thế này: hãy để mọi người
Trang web tôi đang xây dựng có thanh tìm kiếm ở trên cùng. Tương tự như Trello hoặc Gmail, tôi muốn khi người dùng nhấn phím "/", tiêu điểm của họ sẽ chuyển đến hộp tìm kiếm. JavaScript của tôi trông như thế này: document.onk
Tôi có đoạn mã nhỏ này: if (PZ_APP.dom.isAnyDomElement($textInputs)){ $textInputs.on("focus", function(){
Tôi đã quan sát thấy những hành vi sau. Chấp nhận hai biến thuộc tính. @property (không nguyên tử, giữ lại) NSString *stringOne; @property (không nguyên tử, gán
Tôi đang giải quyết vấn đề như sau - triển khai một hàm đánh giá một biểu thức bao gồm các toán hạng sau: "(", ")", "+", "-", "*", "/". Mỗi biểu thức số có thể lớn (lớn bằng biểu thức được biểu diễn bằng chuỗi 1000 bit). "/
Tôi có một tập hợp các máy chủ và một tập hợp các nhiệm vụ. Mỗi máy chủ đều có dung lượng CPU, bộ nhớ và tác vụ, và mỗi tác vụ đều có yêu cầu về CPU và bộ nhớ. Mỗi máy chủ thuộc một lớp độ trễ và có thể giao tiếp với các máy chủ khác có giá trị độ trễ cụ thể. Mỗi nhiệm vụ có thể cần phải bằng hoặc
Chương trình này có chức năng gì: Đọc một ma trận (mảng hai chiều) chứa nrRows hàng và nrColomns cột từ một tệp. Tất cả các phần tử của ma trận đều là số nguyên trong khoảng [0,100). Chương trình phải sắp xếp lại tất cả các phần tử trong ma trận sao cho mỗi phần tử bằng
Thế giới ơi! Tôi có một câu hỏi. Hôm nay tôi thử tạo một mã để tìm số Catalan. Nhưng trong chương trình của tôi thì đó có thể là những con số dài. Tôi đã tìm ra tử số và mẫu số. Nhưng tôi không thể chia các số dài! Ngoài ra, chỉ có thư viện chuẩn mới được sử dụng trong chương trình này. Xin hãy giúp tôi. Đây là mã của tôi
Tôi chắc chắn là mình đã bỏ lỡ điều gì đó hiển nhiên, nhưng tôi đang cố gắng tạo một thể hiện của con trỏ NSInteger trong Objective C. -(NSInteger*) lấyIntegerPointer{ NSInteger
Câu hỏi này đã có câu trả lời tại đây: Sự khác biệt giữa self.ivar và ivar? (4 câu trả lời) Đã đóng 9 năm trước.
Làm thế nào tôi có thể gán v[i] cho một chuỗi số nguyên (kiểu của v là vector
Tôi muốn nhờ giúp đỡ với một bài tập....Tôi đã mang bài tập này đến trường...Tôi phải viết một chương trình để tải một ma trận G và một ma trận G thứ hai và tìm kiếm ma trận G thứ hai để biết số lượng tồn tại của ma trận G đầu tiên...Tuy nhiên, khi tôi thử chạy
Tôi phải quản lý tài nguyên. Về cơ bản, đây là một số duy nhất dùng để xác định kết nối lớp 2 trong một bộ chuyển mạch. Có thể có 16k kết nối như vậy, vì vậy mỗi khi người dùng muốn cấu hình kết nối, họ cần phải chỉ định một chỉ mục duy nhất. Tương tự như vậy, khi người dùng muốn xóa một kết nối, tài nguyên (
Có quy ước đặt tên chung nào để phân biệt giữa chuỗi đã phân bổ và chưa phân bổ không? Hy vọng những gì tôi đang tìm kiếm sẽ tương tự như những gì chúng ta đã làm từ Making Wrong Code Look Wrong, nhưng tôi muốn sử dụng thứ gì đó phổ biến hơn là tự tạo ra. tối ưu
Tôi cần đọc tệp .txt và gán từng từ trong tệp vào một cấu trúc được trỏ tới từ một vectơ cấu trúc. Tôi sẽ giải thích rõ hơn ở phần dưới. Cảm ơn sự giúp đỡ của bạn. Chương trình của tôi chỉ phân bổ từ đầu tiên của tệp... Tôi biết vấn đề nằm ở hàm i
Tôi là một lập trình viên xuất sắc, rất giỏi!