Как отобразить 2 ^ 3 в Javascript - PullRequest
3 голосов
/ 21 июля 2011

Я создаю приложение, используя appcelerator, который должен отображать математическое выражение, например 2 ^ 3, но с 3, являющимся небольшим числом над 2. Есть ли способ выразить математические выражения в Javascript?

Примечания

  • Текст представляет собой статический бит текста.
  • Используемый язык - Javascript.
  • Работает на имитаторе iPhone / Android в рамках appcelerator.
  • Appcelerator экранирует HTML

Заранее благодарим за любую помощь.

Ответы [ 5 ]

2 голосов
/ 21 июля 2011

"2"+"3".sup() должно дать вам правильное форматирование.

Вы также можете использовать .sub() для индексации.

2 голосов
/ 21 июля 2011

Если вас интересует только отображение, вы можете использовать html-теги <sub></sub> и <sup></sup>, которые делают текст между ними sub script и sup erscript.
Большим плюсом является то, что нативная строка javascript имеет функцию возврата строки, завернутой в эти теги (не то, чтобы это было очень сложно реализовать):

var a = "2",
    b = "3",
    formattedEquation = a+b.sup(),
    r = Math.pow(a,b),
    htmlEquation = formattedEquation + ' = ' + r;
// let's say you use jquery for the simplicity of the example
$(myContainer).html(htmlEquation);
1 голос
/ 21 июля 2011

Для более сложной математической типизации вы можете использовать механизм отображения MathJax JavaScript.Похоже, что он полностью совместим с WebKit и, кажется, прекрасно набирает вещи на моих устройствах iOS.

0 голосов
/ 21 июля 2011

Некоторые хорошие идеи, которые будут работать на платформах, таких как JQueryMobile, но, к сожалению, Appcelerator избегает всех HTML (если только вы не пишете код только для Android).

Способ отображения математических выражений заключается в определении символа юникода в строке, как это предложил Пэт в комментарии.

* 1005 Е.Г. *

2\u00B3
0 голосов
/ 21 июля 2011

В HTML есть <sup> и <sub> теги , попробуйте это:

<html>x<sup>4</sup>+y<sup>1245687</sup></html>

Если этого недостаточно, взгляните на MathML

...