|
обращение из html к методам в файле.js
Подскажите, как сделать ,чтобы из html передать и и получить возвращаемое значение ,в файл.js ?
function myswf()
{
function calc( a ,b )
{
console.log( "nnn" )
return a + b ;
}
}
<!DOCTYPE html>
<html>
<head>
<title></title>
<script type="text/javascript" path="myswf.js"></script>
<script>
/*что нужно написать здесь ,чтобы передать и получить значение
*из метода calc?
*/
</script>
</head>
<body>
</body>
</html>
|
function myswf(a, b)
{
function calc( a ,b )
{
console.log( "nnn" )
return a + b ;
}
return calc( a ,b );
}
то что нужно написать console.log(myswf(4, 5)) |
Цитата:
|
сделал так
myswf.js
function myswf( a , b )
{
function calc( a , b )
{
console.log( "calc" )
return a + b ;
}
return calc( a , b )
}
html
<!DOCTYPE html>
<html>
<head>
<title></title>
<script type="text/javascript" path="myswf.js"></script>
<script>
console.log( myswf( 2 ,4 ) )
</script>
</head>
<body>
</body>
</html>
ошибка : Цитата:
|
Цитата:
|
Спасибо Вам! И у меня ещё вопрос - в js передавать параметры нужно через конструктор? В нем нет static function? Чтобы минуя myswf сразу к calc обратится?
|
И это я тоже понял. Получается ,что метод calc вложенный в конструктор...Просто по началу подумал ,что myswf это обьявление класса ,а тут получается ,что конструктора.
|
Немножко я поспешил. При использовании swfobject в файл.html
передают параметры через конструктор в функцию swfobject.embedSWF(..param) ; Сам swfobject выглядит как то так -
var swfobject=function(){
/*...тело
*и где то тут */
embedSWF:function(...param)
{
/*тело*/
}
я пытаюсь сделать тоже самое .то есть через конструктор передать параметры его методу, но не получается. Почему?
function myswf()
{
next : function( a ,b )
{
console.log( a + b ) ;
}
}
<!DOCTYPE html>
<html>
<head>
<title></title>
<script type="text/javascript" src="myswf.js"></script>
<script>
var a = 1 ;
var b = 2 ;
myswf.next( a ,b )
</script>
</head>
<body>
</body>
</html>
и даже так пробовал
var myswf = function ()
{
next : function( a ,b )
{
console.log( a + b ) ;
}
}
|
<script>
//класс
function Obj()
{
return {
method: function(a, b)
{
return a + b;
}
};
}
//объявляем экземпляр класса
var obj = Obj();
//обращаемся к методу класса и результат сохраняем в переменную
var result = obj.method(1, 4);
console.log(result);
</script>
|
skrudjmakdak для этого существуют прототипы:
//класс
function Obj()
{
//
}
Obj.prototype.method = function(a, b)
{
return a + b;
};
//объявляем экземпляр класса
var obj = new Obj();
//обращаемся к методу класса и результат сохраняем в переменную
var result = obj.method(1, 4);
console.log(result);
|
| Часовой пояс GMT +3, время: 23:15. |
|