Làm cách nào để tính tổng khóa đối tượng trong JavaScript?
Tôi sẽ giả định trước rằng nhiều cuộc kiểm tra trung thực mà bạn đang thực hiện (e. g. Show Một nguồn phức tạp chính ở đây là thực tế là mỗi 0). Tôi thấy nó sạch hơn nhiều nếu tôi tính riêng giá trị key1 kết quả với giá trị 0 một cách độc lập, thay vì cố gắng tính cả hai giá trị đó cùng một lúcVí dụ, tôi đã thay đổi logic để tính toán đối tượng 1 thành
Lưu ý cách tôi có chức năng rút gọn khác nhau cho mỗi phím? . Trong đoạn mã trước, tôi nhận thấy rằng tôi có thể chia mỗi
Những
Tôi đã đơn giản hóa các khu vực khác của mã theo cách rất giống nhau và thực hiện một số đơn giản hóa khác ngoài điều đó, cho đến khi tôi đạt được giải pháp khá ngắn gọn này
Từ đây, bạn sẽ nhận thấy có khá nhiều logic lặp đi lặp lại. Nếu bạn nghĩ nó hợp lý, bạn có thể trích xuất một hàm trợ giúp có khả năng tính tổng cho một khóa riêng lẻ, sau đó sử dụng hàm trợ giúp đó cho cả hai khóa. Tôi đã chọn không làm điều này, một phần vì tôi không biết đủ về trường hợp sử dụng cụ thể để biết liệu loại cấu trúc lại này có hợp lý hay không, nhưng đó là một tùy chọn (Cuối cùng, tôi thực sự thích kết quả cuối cùng của @morbusg hơn. Tuy nhiên, tôi nghĩ rằng tôi sẽ chia sẻ quá trình tái cấu trúc mà tôi đã thực hiện, để hy vọng đưa ra ý tưởng về cách làm sạch mã như thế này trong tương lai) Ban đầu 6 là chỉ số của phần tử áp chót của mảng nên 7 là phần tử xâu áp chót và 8 là phần tử xâu cuối cùng của mảngSau 9, mảng chuỗi trở thành 0. Ở vòng lặp đầu tiên của vòng lặp 'for', các khóa 1 và 2 sẽ có giá trị chuỗi là "v". Dòng mã dài sau đó tính tổng các giá trị của hai khóa và cập nhật phần tử áp chót với giá trị mới. vì vậy phần tử áp chót trở thành “v. 7”. Phần tử cuối cùng của mảng (“v. 5”) sau đó bị xóa. Vì vậy, chúng ta có thể nói rằng hai phần tử mảng cuối cùng đã được 'hợp nhất' (thuật ngữ của tôi)Ở vòng lặp tiếp theo của vòng lặp 'for', 1 sẽ là "a" và 2 sẽ là "v" nên mã trong khối điều kiện 'if' sẽ không được thực thi. Tương tự cho vòng lặp tiếp theo, đây sẽ là vòng lặp cuối cùngVí dụ, nếu mảng được thay đổi thành ______25, thì sau khi sắp xếp(), nó sẽ trở thành 70. Vòng lặp đầu tiên của vòng lặp 'for' sẽ hoạt động như trước và hai phần tử sẽ được 'hợp nhất'. Trong vòng lặp thứ hai, 1 và 2 sẽ khác nhau nên khối điều kiện 'if' sẽ không được thực thi. Trong vòng lặp thứ ba, cả 1 và 2 sẽ là “s” nên các phần tử mảng sẽ được ‘hợp nhất’
Làm cách nào để tính tổng hai đối tượng trong JavaScript?const obj1 = { a. 12,b. 8, c. 17 }; . 2, b. 4, c. 1}; . đầu ra const = {a. 14, b. 12, c. 18 };write a JavaScript function that takes in two such object. const output = { a:14, b:12, c:18 };
Làm cách nào để tổng hợp mảng giá trị đối tượng trong JavaScript?Tính tổng một thuộc tính trong một mảng đối tượng. . Gọi phương thức reduce() để lặp lại mảng Trên mỗi lần lặp tăng tổng với giá trị cụ thể Kết quả sẽ chứa tổng các giá trị cho thuộc tính cụ thể Khóa đối tượng có thể là số trong JS không?Ngược lại với suy nghĩ của nhiều người, Khóa đối tượng JavaScript không thể là các giá trị loại Số , Boolean, Null hoặc Không xác định. Khóa đối tượng chỉ có thể là chuỗi và mặc dù nhà phát triển có thể sử dụng các loại dữ liệu khác để đặt khóa đối tượng, nhưng JavaScript sẽ tự động chuyển đổi khóa thành chuỗi thành giá trị.
Làm cách nào để đếm giá trị đối tượng trong JavaScript?Tóm lại. . Có hai cách để đếm số thuộc tính trong một đối tượng. Bạn có thể sử dụng vòng lặp for hoặc Object. phương thức keys() Sử dụng vòng lặp for nếu bạn muốn bao gồm bất kỳ thuộc tính đối tượng được liên kết nào trong số thuộc tính của mình Sử dụng đối tượng. keys() nếu bạn chỉ muốn đếm vô số thuộc tính (của riêng đối tượng) |