კონსტანტები მასივებით ან ობიექტებით JavaScript-ში
კონსტანტები, რომლებიც შეიცავენ მასივებს და ობიექტებს, მუშაობენ საინტერესო გზით. JavaScript არ იძლევა ნებართვას ამ კონსტანტების მნიშვნელობების შეცვლაზე, მაგრამ ობიექტების თვისებების და მასივების ელემენტების მნიშვნელობების შეცვლა - შესაძლებელია.
მოდით შევხედოთ მაგალითებს. მოდით, გვქონდეს მოცემული ასეთი ობიექტი:
const obj = {a: 1, b: 2, c: 3};
მოდით ვცადოთ მასში სხვა რამის ჩაწერა:
obj = 123; // შეცდომა
მოდით ვცადოთ კონსტანტაში სხვა ობიექტის ჩაწერა:
obj = {x: 1, y: 2, z: 3}; // შეცდომა
თუმცა, თუ ჩვენ ვცდით ობიექტის თვისების შეცვლას, ეს იმუშავებს:
obj.a = '+'; // მუშაობს!
რა გამოიტანს შემდეგი კოდის შესრულების შედეგად:
const arr = ['a', 'b', 'c'];
arr[1] = '!';
console.log(arr);
რა გამოიტანს შემდეგი კოდის შესრულების შედეგად:
const arr = ['a', 'b', 'c'];
arr = [1, 2, 3];
console.log(arr);
რა გამოიტანს შემდეგი კოდის შესრულების შედეგად:
const arr = ['a', 'b', 'c'];
arr = ['a', 'b', 'c'];
console.log(arr);