Я думаю, что вопрос был дан ответ выше, просто хотел добавить два моих цента на тему «с». Пример, который привел почти каждый из вас, - это неоднозначные имена классов и переменных, которые с с или без с трудно поддерживать и понимать. Если вы называете свои переменные, классы, объекты с каким-то значением с могут быть золотыми.
var car = {
wheels: {radius: 5, rim: 'gold', shape: 'circle'},
body: {color: 'black', windows: 'tinted'}
};
и сейчас:
with (car){
wheels.shape = square;
body.color = blue;
}
Суть в том, что может быть мощным и сэкономить много времени для программиста после вас. Он работает хорошо только в том случае, если вы используете его правильно и уже имеете привычку подробного именования переменных и достаточного комментирования. Кроме того, кто-то сказал, что если вы делаете:
with(a){
x = 3;
}
что переменная, не являющаяся членом класса, каким-то образом переопределится. Поправьте меня, если я ошибаюсь, но если есть глобальная переменная x и свойство ax , в блоке с только ax get переопределяется, поскольку это текущая область.