У меня есть вопрос о некотором javascript-коде, который я видел в javascript-библиотеке google.?: In javascript objec property
1.
constructor (sw?: LatLng, ne?: LatLng);
выше находится внутри класса под названием LatLng. Я не уверен, что здесь происходит. Почему используется «?:», И что это означает, что параметры передаются в функцию.
2.
lat(): number;
выше находится внутри другого объекта. Я думаю, это говорит мне, что функция этого объекта возвращает число, но я не уверен, что это так, поскольку я думал, что вы не можете указать типы возвращаемых данных в javascript.
3.
export interface MapOptions {
backgroundColor?: string;
center?: LatLng;
disableDefaultUI?: boolean;
disableDoubleClickZoom?: boolean;
draggable?: boolean;
draggableCursor?: string;
draggingCursor?: string;
heading?: number;
...etc.
}
Какого черта все это? Является ли это даже законным javascript. Что делает оператор??: (Или что бы вы там ни называли)?
Я опытный C++ и определение типа - это то, что мой разум видит где угодно. Я пытаюсь приспособиться к переменным javascript с не типами, но это здесь немного запутывает ... все справа от двоеточия просто назначает типы свойствам слева? или используется оператор сравнения для сравнения чего-то?
UPDATE: Я предполагаю, что это не javascript в конце концов. Не понимаю, почему он проголосовал за то, что он был машинописным. Так много из того, что это учебная среда, ха!
Это не JavaScript. –
Кажется, что часть документации, '?' Отмечает функции-аргументы/свойства объекта как необязательные –
'lat(): number', вероятно, является методом' lat() 'некоторого объекта, который возвращает значение типа 'number' –