Javascript: определение Long Int - PullRequest
0 голосов
/ 04 января 2012

Я много читал о типах данных в javascript, но ничего не нашел о long int. Мне нужно знать, как определить Long Int в JavaScript. Причина заключается в том, что следующие методы объекта Range принимают тип данных Long в качестве второго параметра:

    var storedSelection = document.createRange();
    storedSelection.setStart(document.body,  );
    storedSelection.setEnd(document.body,  );

Это изображение получено из IDE WebStorm, обратите внимание на тип, указанный на этом изображении:

enter image description here

1 Ответ

1 голос
/ 04 января 2012

Если вы много читали о типах данных JavaScript, как вы говорите, то вы уже должны знать, что:

  1. Переменные JS свободно напечатаны.То есть, когда вы объявляете переменную, вы не присваиваете ей тип (только назначенные значения имеют тип).
  2. Любой данной переменной могут быть присвоены значения разных типов в разное время.То есть, установив x = 12, вы можете позже установить x = "some string" или x = { some : "object" } и т. Д.
  3. JS имеет только один тип чисел, числа с плавающей запятой (двойные значения IEEE-754), поэтому, вообще говоря, нетРазличают целые и десятичные числа.

Я не знаю, где вы читали, что методы диапазона принимают в качестве параметра "тип данных long int", но для этого параметра вы можете передать вИзвестная вам переменная JS содержит целое число, числовой литерал или даже вызов функции, которая возвращает число:

function getNumber() {
   return 15;
}

var myVariable = 20;

var storedSelection = document.createRange();
storedSelection.setStart(document.body, 12);
storedSelection.setEnd(document.body, myVariable);
storedSelection.setEnd(document.body, getNumber() );

Дополнительная информация: https://developer.mozilla.org/en/JavaScript/Guide/Values,_Variables,_and_Literals

PS Если у вас естьнецелое значение в результате вычисления, скажем, вы вычисляете свой диапазон путем деления общей длины на три или что-то еще, вы можете сделать результат целым числом, округлив до ближайшего целого числа с Math.round() или округление до Math.floor() или округление до Math.ceil().См. Также Math объект .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...