logger.log()
является функцией стрелки, поэтому arguments
являются не аргументами этой функции (см. Функции стрелок: нет привязки arguments
), а являются аргументами родительской функции, в данном случае - Функция-обертка Node.js , которая компилирует модули и имеет аргументы с циклическими зависимостями.
Попробуйте использовать общую функцию здесь:
const logger = {
log() {
// ...
}
};
If you use the underscore prefix for your ivars (which is nothing more than a common convention, but a useful one), then you need to do 1 extra thing so the auto-generated accessor (for the property) knows which ivar to use. Specifically, in your implementation file, your synthesize
should look like this:
@synthesize missionName = _missionName;
More generically, this is:
@synthesize propertyName = _ivarName;
It на самом деле ничего не значит, это просто соглашение, которое некоторые люди используют для дифференциации переменных-членов от локальных переменных.
Что касается ошибки, то, похоже, aMission имеет неправильный тип. Какова его декларация?
Это просто соглашение о удобочитаемости, оно не делает ничего особенного для компилятора. Вы увидите, что люди используют его для переменных частного экземпляра и имен методов. Apple на самом деле рекомендует не использовать подчеркивание (если вы не будете осторожны, вы можете переопределить что-то в своем суперклассе), но вы не должны чувствовать себя плохо, игнорируя этот совет. :)