Я хочу проверить свой webapp, если пользователь является администратором.Object.defineProperty - запретить пользователю изменять этот JavaScript
var obj = { admin: false; };
Object.defineProperty(obj, "admin", {
writable: false
});
Теперь пользователь может перейти в консоль, и сделать:
Object.defineProperty(obj, "admin", {
writable: true
});
obj.admin = true;
Есть ли способ, чтобы предотвратить это? Есть ли другой лучший способ предотвратить выполнение частей кода JavaScript, если применяются определенные критерии? Я понимаю, что пользователи могут изменить код в любом случае, поэтому я немного ищу хорошую практику.
Вы можете инкапсулировать инициализацию свойств так же, как в java-аксессуарах и мутаторах. – fuzzy28
Почему не 'var obj = {admin: function() {return false; }}; '? –
@YeldarKurmangaliyev: не позволяет ли эта собственность переписываться? Не стоимость, а сама собственность. –