Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   new java.lang.String под IE6 (https://javascript.ru/forum/misc/1160-new-java-lang-string-pod-ie6.html)

diclofoss 17.04.2008 01:13

new java.lang.String под IE6
 
Добрый день!
Делаю:
Код:

<SCRIPT LANGUAGE="JavaScript1.2">
                var myString = new java.lang.String("Hello world");
                alert(myString.startsWith("1"));
</SCRIPT>

В мозилле нормально всё пашет а в эксплорере ругается на слово java
мож что подключить нужно?

Мож есть ещё какое-либо решение как продернуть метод startWith?

tenshi 17.04.2008 12:29

String.prototype.startsWith = function(s) { return this.indexOf(s)==0; }

Dmitry A. Soshnikov 17.04.2008 14:39

А в IE даже не JavaScript используется, а JScript и, стало быть, с wrapper'ом Java он не работает (а FF и Opera - прекрасно (естественно, что Java установлена на клиентской машине)).

P.S.: я, кстати, ни разу такого не ипользовал, надо посмотреть, точно ли в IE вообще нельзя достучаться до Java. А вообще, это не JavaScript и метода startWith() прототип String'a не имеет (но его можно описать самому, как вариант - пример tenshi). Да и, собственно, если ты планировал писать ту вещь на JavaScript, то и надо писать на JavaScript, а не использовать wrapper Java.

tenshi, там конкструктор и метод Java вызывается, а не JavaScript.

diclofoss 17.04.2008 19:33

На самом деле видимо я просто начитался плохих примеров в интернете.
Проснувшись сегодня с утра на свежую голову я написал вот так:

Код:

curval = "some string";
x = "som";
eval ("var myRe = /^"+x+"/;");
alert(myRe1.exec(curval));


Dmitry A. Soshnikov 17.04.2008 20:13

diclofoss, :) если нужно подставить переменную в регЭксп, то вместо eval'a можно (нужно) использовать конструктор RegExp(...).

Kolyaj 17.04.2008 20:36

diclofoss, и не зачем для такой задачи регулярные выражения. Чем вас пример tenshi не устраивает?

tenshi 18.04.2008 02:06

вообще, то был копипаст из prototype.js

.ня


Часовой пояс GMT +3, время: 23:22.