Hướng dẫn how do you update an object in javascript? - làm thế nào để bạn cập nhật một đối tượng trong javascript?

Tôi có một cấu trúc như sau:

skillet.person = {
  name: {
    first: '',
    last: ''
  }, 
  age: {
    current: '' 
  },
  birthday: {
    day: '',
    month: '',
    year: ''
  }
}

Tôi đã tự hỏi làm thế nào tôi sẽ cập nhật các giá trị này? tức là tôi mặc dù những điều sau đây là chính xác

skillet.person.name.push[{ first: 'blah', last: 'ha'}];

Nhưng nó sai? Làm thế nào tôi có thể sửa lỗi này ?

hỏi ngày 26 tháng 2 năm 2012 lúc 16:34Feb 26, 2012 at 16:34

1

Sử dụng cú pháp ES7+ và cách tiếp cận chức năng:

const new_obj = { ...obj, name: { first: 'blah', last: 'ha'} }

Đã trả lời ngày 16 tháng 3 năm 2018 lúc 11:35Mar 16, 2018 at 11:35

Ramon Diogoramon DiogoRamon Diogo

1.4321 Huy hiệu vàng13 Huy hiệu bạc9 Huy hiệu đồng1 gold badge13 silver badges9 bronze badges

3

skillet.person.name.first = "blah"
skillet.person.name.last = "ha"

hoặc

skillet.person.name = {first : "blah", last : "ha"}

Đã trả lời ngày 26 tháng 2 năm 2012 lúc 16:36Feb 26, 2012 at 16:36

YxdyxdYXD

30.7K15 Huy hiệu vàng70 Huy hiệu bạc113 Huy hiệu đồng15 gold badges70 silver badges113 bronze badges

6

Như @Ramon-Diogo đã viết với ES7+

Tôi thích cập nhật các giá trị lồng nhau như:

let user = {
    name: {
        first: 'john',
        last: 'smith'
    },
    age: 18,
    city: 'new york'
}

const age = 20;

user = {...user, age}

console.log[user.age]
// output: 20


const newData ={
    age: 22,
    city: 'san francisco'
};

user = {...user,...newData}

console.log[user.name.first]
// output: john
console.log[user.age]
// output: 22
console.log[user.city]
// output: 'san francisco'

Đã trả lời ngày 1 tháng 8 năm 2019 lúc 18:46Aug 1, 2019 at 18:46

Emisael Carreraemisael CarreraEmisael Carrera

4871 Huy hiệu vàng6 Huy hiệu bạc9 Huy hiệu đồng1 gold badge6 silver badges9 bronze badges

1

Nếu bạn muốn trộn một đối tượng vào một đối tượng khác, bạn có thể sử dụng chức năng mở rộng sâu của JQuery. "Deep" có nghĩa là nó không ghi đè lên

skillet.person.name.push[{ first: 'blah', last: 'ha'}];
1 với đối tượng mới, mà là ghi đè lên các thuộc tính bên trong một đối tượng như vậy.

$.extend[true, skillet.person, {
  name: {
    first: 'updated'
  },
  birthday: {
    day: 'updated',
    year: 'updated'
  }
}];

Bây giờ,

skillet.person.name.push[{ first: 'blah', last: 'ha'}];
2 có các thuộc tính thích hợp được cập nhật, trong khi các thuộc tính khác không bị ảnh hưởng.

Đã trả lời ngày 26 tháng 2 năm 2012 lúc 16:55Feb 26, 2012 at 16:55

PIMVDBPIMVDBpimvdb

Phù bằng vàng 148K7676 gold badges301 silver badges351 bronze badges

0

skillet.person.name.push[{ first: 'blah', last: 'ha'}];
3 là một phương pháp của
skillet.person.name.push[{ first: 'blah', last: 'ha'}];
4S thêm một mục mới vào một mảng.

Nếu bạn muốn thay thế giá trị thì:

skillet.person.name = { … };

Nếu bạn muốn lưu trữ nhiều tên [đầy đủ] trong đối tượng, thì bạn sẽ cần thuộc tính để giữ một mảng các đối tượng thay vì một đối tượng.

Đã trả lời ngày 26 tháng 2 năm 2012 lúc 16:36Feb 26, 2012 at 16:36

YxdyxdQuentin

30.7K15 Huy hiệu vàng70 Huy hiệu bạc113 Huy hiệu đồng121 gold badges1175 silver badges1289 bronze badges

2

Như @Ramon-Diogo đã viết với ES7+

     let skillet = {
        person: {
            name    : {
                first: '',
                last : ''
            },
            age     : {
                current: ''
            },
            birthday: {
                day  : '',
                month: '',
                year : ''
            }
        }
    };

    let update = {
        person: {
            name: {
                first: 'blah',
                last : 'ha'
            }
        }
    };

    let result = Object.assign[skillet.person, update.person];

    console.log[result];

Tôi thích cập nhật các giá trị lồng nhau như:Dec 20, 2019 at 20:07

Jasp402Jasp402Jasp402

Đã trả lời ngày 1 tháng 8 năm 2019 lúc 18:462 silver badges10 bronze badges

2

skillet.person.name.first = "blah"
skillet.person.name.last = "ha"

Emisael Carreraemisael Carrera

4b0

4871 Huy hiệu vàng6 Huy hiệu bạc9 Huy hiệu đồng30 gold badges92 silver badges137 bronze badges

Nếu bạn muốn trộn một đối tượng vào một đối tượng khác, bạn có thể sử dụng chức năng mở rộng sâu của JQuery. "Deep" có nghĩa là nó không ghi đè lên

skillet.person.name.push[{ first: 'blah', last: 'ha'}];
1 với đối tượng mới, mà là ghi đè lên các thuộc tính bên trong một đối tượng như vậy.Apr 6, 2020 at 9:22

skillet.person.name.push[{ first: 'blah', last: 'ha'}];
0

Bây giờ,

skillet.person.name.push[{ first: 'blah', last: 'ha'}];
2 có các thuộc tính thích hợp được cập nhật, trong khi các thuộc tính khác không bị ảnh hưởng.

Đã trả lời ngày 26 tháng 2 năm 2012 lúc 16:55Feb 25, 2021 at 10:37

1

Chúng ta có thể thay đổi giá trị của đối tượng trong JavaScript không?

Để thay đổi giá trị của một đối tượng trong một mảng: hãy gọi phương thức findIndex [] để lấy chỉ mục của đối tượng cụ thể. Tiếp cận mảng ở chỉ mục và thay đổi giá trị của thuộc tính bằng ký hiệu DOT. Giá trị của đối tượng trong mảng sẽ được cập nhật tại chỗ.Call the findIndex[] method to get the index of the specific object. Access the array at the index and change the property's value using dot notation. The value of the object in the array will get updated in place.

Làm thế nào để bạn cập nhật một đối tượng trong một mảng?

Để cập nhật thuộc tính của một đối tượng trong một mảng các đối tượng, hãy sử dụng phương thức bản đồ [] để lặp qua mảng.Trên mỗi lần lặp, kiểm tra xem đối tượng hiện tại có phải là một đối tượng được cập nhật không.Nếu là, sửa đổi đối tượng và trả về kết quả, nếu không hãy trả về đối tượng như là.use the map[] method to iterate over the array. On each iteration, check if the current object is the one to be updated. If it is, modify the object and return the result, otherwise return the object as is.

Làm thế nào để bạn cập nhật JavaScript?

Có hai tùy chọn để chạy cập nhật JavaScript.Chỉ định các tham số tương tác.Sử dụng tệp định nghĩa được tạo sẵn ...
Chọn Điều hướng, sau đó Trình quản lý tác động, sau đó cập nhật JavaScript.....
Nhập mô tả nhiệm vụ, để xác định nhiệm vụ trong trạng thái nhiệm vụ hiển thị ..

Bạn sẽ thay đổi hoặc cập nhật thuộc tính tên của đối tượng như thế nào?

Làm thế nào để thay đổi tên thuộc tính đối tượng trong JavaScript của mã câu trả lời..
obj = {name: 'bobo'} // key: value ..
obj.newName = obj.Tên // trên đối tượng Tạo tên khóa mới.Gán giá trị cũ cho điều này ..
Xóa obj.Tên // Xóa đối tượng có tên khóa cũ ..

Bài Viết Liên Quan

Chủ Đề