Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
 Аватар для Gcom
82 / 82 / 18
Регистрация: 03.02.2016
Сообщений: 564
Записей в блоге: 1

Что значат следующие конструкции?

08.09.2017, 12:16. Показов 830. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1. Что за Chess = ?
JavaScript
1
var Chess = function(fen) {}
2. Это я так понимаю массив PAWN_OFFSETS , но что значат b: и w:?
JavaScript
1
2
3
4
    var PAWN_OFFSETS = {
        b: [16, 32, 17, 15],
        w: [-16, -32, -17, -15]
    };
3. Это тоже массив? (с привязкой "ключ" - "значение")
JavaScript
1
var SHIFTS = { p: 0, n: 1, b: 2, r: 3, q: 4, k: 5 };
4. А это что, то фигурные, то квадратные скобки?
JavaScript
1
2
    var history = [];
    var header = {};
5. И вот эти конструкции вообще не понятны:
JavaScript
1
2
3
4
5
6
7
        load: function(fen) {
            return load(fen);
        },
 
        reset: function() {
            return reset();
        },
просто function(fen){} я понимаю, но что за load: впереди и зачем он вообще не понятно.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.09.2017, 12:16
Ответы с готовыми решениями:

Объяснить в комментариях, что значат каждые строчки кода
Нужно объяснить, какие функции у каждой строчки кода <html> <head> <title> тест по информатике для младших школьников ...

Что значат следующие операции в C++
1. A&=A-1 2. A^=(1<<i) 3. A<<b

скажите что значат %.2f, 4,8 что значат эти цифры и как оно выведет на экран
printf("\n Точность плавающей точки для PI: %.2f, %.4f, %.8f\n", PI,PI,PI); скажите что значат %.2f, 4,8 что значат эти цифры и как оно...

4
54 / 58 / 39
Регистрация: 27.12.2011
Сообщений: 93
08.09.2017, 13:45
1) В javascript функция может быть присвоена переменной, поэтому javascript в том числе относится к языкам функционального программирования.
Такая конструкция называется function expression

Но вообще, с заглавной буквы принято называть особый тип функций - функции-конструкторы или просто конструкторы,
которые помогают создавать новые объекты, когда их вызывают с ключевым словом new.
JavaScript
1
2
3
4
5
6
7
var Chess = function (fen) {
    this.fen = fen;
};
 
var chess1 = new Chess('some text');
 
console.log(chess1.fen);
2) PAWN_OFFSETS - это объект, у которого есть два свойства с именами b и w. В качестве свойств объекта могут быть значения любого типа, в данном случае b и w - массивы [16, 32, 17, 15] и [-16, -32, -17, -15]. Хотя в широком смысле массивы относятся к объектному типу данных, но это уже другая история.

3) Это объект «с привязкой "ключ" - "значение"», где ключ - это имя свойства объекта. Вызвать его можно и так console.log(SHIFTS.p), и так console.log(SHIFTS['p'])

4) var history = []; - пустой массив
var header = {}; - пустой объект

5) Вырезано из контекста. Это свойства какого-то объекта, а в качестве свойств выступают функции (в таком случае они называются методами)

Добавлено через 7 минут
5) Пример:
JavaScript
1
2
3
4
5
6
7
var someObject = {
    sayHello: function (name) {
        console.log('Привет, ' + name);
    }
};
 
someObject.sayHello('Василий');
Все результаты примеров с использование console.log() можно посмотреть в консоли браузера, если нажать F12
2
 Аватар для Gcom
82 / 82 / 18
Регистрация: 03.02.2016
Сообщений: 564
Записей в блоге: 1
09.09.2017, 12:02  [ТС]
Mikola-BLR, походу с такими конструкциями не переведешь код в C# ((

Добавлено через 2 часа 28 минут
В коде встречается такое:
JavaScript
1
2
3
4
5
6
7
8
9
    var FLAGS = {
        NORMAL: 'n',
        CAPTURE: 'c',
        BIG_PAWN: 'b',
        EP_CAPTURE: 'e',
        PROMOTION: 'p',
        KSIDE_CASTLE: 'k',
        QSIDE_CASTLE: 'q'
    };
JavaScript
1
2
3
4
5
6
7
8
9
    var BITS = {
        NORMAL: 1,
        CAPTURE: 2,
        BIG_PAWN: 4,
        EP_CAPTURE: 8,
        PROMOTION: 16,
        KSIDE_CASTLE: 32,
        QSIDE_CASTLE: 64
    };
Как мне понять чей этот NORMAL???
Какого объекта FLAGS или BITS???

Добавлено через 49 минут
Продолжаем
Встретился код:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    var ROOKS = {
        w: [{
                square: SQUARES.a1,
                flag: BITS.QSIDE_CASTLE
            },
            {
                square: SQUARES.h1,
                flag: BITS.KSIDE_CASTLE
            }
        ],
        b: [{
                square: SQUARES.a8,
                flag: BITS.QSIDE_CASTLE
            },
            {
                square: SQUARES.h8,
                flag: BITS.KSIDE_CASTLE
            }
        ]
    };
Я так понимаю это класс ROOKS у него два свойства w и b в которых лежит массив из объекта, у которого в свою очередь тоже два свойства square и flag, так?

Добавлено через 2 часа 23 минуты
Не совсем понятно что за птица такая этот undefined? Что за тип такой...
JavaScript
1
2
3
        if (typeof keep_headers === 'undefined') {
            keep_headers = false;
        }
0
the hardway first
Эксперт JS
 Аватар для j2FunOnly
2475 / 1847 / 910
Регистрация: 05.06.2015
Сообщений: 3,610
09.09.2017, 12:09
Gcom, вы бы для начала хотя бы основы почитали, там не так уж и много - потратили бы на много меньше времени https://learn.javascript.ru/ty... -undefined
1
 Аватар для Gcom
82 / 82 / 18
Регистрация: 03.02.2016
Сообщений: 564
Записей в блоге: 1
10.09.2017, 09:14  [ТС]

Не по теме:

j2FunOnly, за ссылку СПС, стало понятно.



Добавлено через 20 часов 45 минут
А вопросы только накапливаются...
Не совсем понятна суть такого:
JavaScript
1
2
3
4
                if (i & 0x88) {
                    i += 7;
                    continue;
                }
Я вижу что это & (Побитовое И), но не могу понять смысл данной конструкции, т.е. что происходит с i?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.09.2017, 09:14
Помогаю со студенческими работами здесь

Что значат **?
Что значат ** ??? double** mas = (double**)malloc(sizeof(double)*(M));

Что значат строки
Извините за мой глупый вопрос на что значат вот эти строки: const TAB = ^I; CR = ^M;

Что значат троеточие?
привет. смотрю такой сырец. Как дословно переводятся эти три точки? template <typename Iterator, typename Expr , typename...

Что значат символы?
Что означают эти операции "-=" и "/=" Синтаксис for(j=i+1; j<n; j++) coef(i) -= A(i,j)*coef(j); ...

Что значат строки?
#include <iostream> using namespace std; int main() { double number, min; min = 0; for(int i = 0; i < 10;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru