﻿# V7035\. Suspicious property implementation\. Another field should probably be returned or assigned instead\.

Анализатор обнаружил свойство, которое обращается к полю, отличному от указанного в названии\.

Рассмотрим пример: 

```cpp
class Vector2 {
  constructor() {
    this._x = 0;
    this._y = 0;
  }
  
  get x() { 
    return this._x; 
  }
  
  get y() { 
    return this._x;  // <=
  } 
}
```

В примере программист намеревался объявить свойства `x` и `y` для доступа к полям `_x` и `_y`, однако в свойстве `y` возвращают не то поле\.

Исправленный вариант кода:

```cpp
class Vector2 {
  constructor() {
    this._x = 0;
    this._y = 0;
  }
  
  get x() { 
    return this._x; 
  }
  
  get y() { 
    return this._y; // <=
  } 
}
```

Анализатор также выдаёт предупреждение при несовпадении поля и названия в методах: 

```cpp
class Rights {
  constructor() {
    this.read = false;
    this.write = false;
  }

  setRead(value) { 
    this.read = value; 
  }
  
  setWrite(value) { 
    this.read = value;   // <=
  } 
}
```