① js怎么调用function中的function
// 1, 方法调用模式 <br>// 当一个函数被保存为对象的一个属性时,我们称之它为该对象的一个方法,那么this被绑定到该对象上 <br>var myObject={ <br>name : "myObject" , <br>value : 0 , <br>increment : function(num){ <br>this.value += typeof(num) === 'number' ? num : 0; <br>return this; <br>} , <br>toString : function(){ <br>return '[Object:' + this.name + ' {value:' + this.value + '}]'; <br>} <br>} <br>alert(myObject.increment(10).increment(20).toString()); // [Object:myObject {value:30}] <br><br>// 2, 函数调用模式 <br>// 当一个函数并非一个对象的函数时,那么它被当作一个函数来调用,this被绑定到全局对象上。这是语言设计的一个错误。倘若语言设计正确,当内部函数调用时,this应该仍然绑定到外部函数的this变量上 <br>var myObject={ <br>name : "myObject" , <br>value : 0 , <br>increment : function(num){ <br>this.value += typeof(num) === 'number' ? num : 0; <br>return this; <br>} , <br>toString : function(){ <br>return '[Object:' + this.name + ' {value:' + this.value + '}]'; <br>}, <br>getInfo: function(){ <br>var self=this; <br>return (function(){ <br>//return this.toString(); // 内部匿名函数中this指向了全局对象window, 输出 [object Window] <br>return self.toString(); // 定义一个变量selft并给它赋值为this,那么内部函数通过该变量访问到指向该对象的this <br>})(); <br>} <br>} <br>alert(myObject.increment(10).increment(20).toString()); // [Object:myObject {value:30}] <br><br>// 3, 构造器调用模式 <br>// JavaScript是一门基于原型继承的语言, 这意味着对象可以直接从其他对象继承属性, 该语言是无类别的。 <br>// 如果一个函数前面带上new来调用,那么将创建一个隐藏连接到该函数的prototype成员的新对象,同时this将会被绑定到构造函数的实例上。 <br>function MyObject(name){ <br>this.name = name || 'MyObject'; <br>this.value=0; <br>this.increment = function(num){ <br>this.value += typeof(num) === 'number' ? num : 0; <br>}; <br>this.toString = function(){ <br>return '[Object:' + this.name + ' {value:' + this.value + '}]'; <br>} <br>this.target = this; <br>}
② javascript中怎么调用js方法
1、引用js文件,路径一定要对
比如
<scriptsrc="js/hello.js"></script>
2、通过function名调用js中的方法,
比如
<script>hello(参数1,参数2)</script>
③ js怎么自己调用自己
1、打开HBuilder工具,在对应的Web项目中,新建JavaScript文件func.js。
④ html怎么调用js里面的东西,例如js里面的函数
1、引入js文件
2、直接调用js中的函数
示例:
1、js文件定义
functionf1(){//js中的函数
}
2、引入js文件
<scriptsrc="js文件路径"></script>
3、html函数调用
<script>
f1();//调用js的函数
</script>
⑤ js中调用其他方法
b方法还是改名字吧,和变量b重复了,js本来就是弱类型的语言,你可以这样实现
这是html
<a href="javascript:void(0)" data-fn="b" onclick="newFun(this)">1111</a>
这是js
function newFun(e) {
var b = $(e).attr("data-fn");
alert(b)
b1();
//此处如何调用 [b] 方法?
}
function b1(){
alert(2)
}
⑥ js方法调用
JS函数的定义与调用方法
JS函数调用的四种方法:方法调用模式,函数调用模式,构造器调用模式,apply,call调用模式
1.方法调用模式:
先定义一个对象,然后在对象的属性中定义方法,通过myobject.property来执行方法,this即指当前的myobject
对象。
var blogInfo={
blogId:123,
blogName:"werwr",
showBlog:function(){alert(this.blogId);}
};
blogInfo.showBlog();
2.函数调用模式
定义一个函数,设置一个变量名保存函数,这时this指向到window对象。
var myfunc = function(a,b){
return a+b;
}
alert(myfunc(3,4));
3.构造器调用模式
定义一个函数对象,在对象中定义属性,在其原型对象中定义方法。在使用prototype的方法时,必须实例化该对象才能调用其方法。
var myfunc = function(a){
this.a = a;
};
myfunc.prototype = {
show:function(){alert(this.a);}
}
var newfunc = new myfunc("123123123");
newfunc.show();
4.apply,call调用模式
var myobject={};
var sum = function(a,b){
return a+b;
};
var sum2 = sum.call(myobject,10,30); //var sum2 = sum.apply(myobject,[10,30]);
alert(sum2);
⑦ js里有两个方法,怎么实现其中一个方法调用另一个方法中的变量
第一种方法。
1.首先准备好两个js文件。
⑧ Js怎么调用外部Js
1、首先需要新建HTML文件。
⑨ JS 类方法调用
window.alert(p.getName1()+" "+People.getName2()+" "+p.getName3());
这里先执行括号里所有的内容,再执行最外层的window.alert,
所以读到People.getName2() 时,函数内的alert就先弹出来了,
因为getName2只有一个alert方法,this.name是Object自带的方法,会返回当前对象的全名,
所以弹出显示People,
构造函数People里虽然有this.name,但是构造函数没实例化是无法调用内部的属性,
所以People.getName2()返回的是undefined,
⑩ js 调用另外一个方法
我们知道,在html中,利用引入的两个js是不可以相互调用的。那么该如何解决呢?当然,你可以将代码通通过来,也许你并不喜欢这样。
例如有这样一个html,里面有一个按钮,当按下时调用b.js文件中的方法b()。而b()中又要调用a.js文件中的方法a()。若要实现这个功能,必须注意,将要引入的Js文件代码放在下面。
首先,我们在html中引入b.js,并在之后加入引用语句。如下:
b.js文件如下:
new_element=document.createElement("script");
new_element.setAttribute("type","text/javascript");
new_element.setAttribute("src","a.js");// 在这里引入了a.js
document.body.appendChild(new_element);
function b() {
a();
}
在b.js文件中前4行代码中我们引入了a.js文件,并在第7行代码中调用了a.js代码中的a()方法。
让我们来分析一下关键的几句代码:首先,我们利用document.createElement("script")生成了一个script的标签,设置其type属性为text/javascript,src为a.js(这里的a.js同b.js放在同一个目录,也可放在不同的目录)。最后将这个标签动态地加入body中。如此一来,我们就可以调用到不同js文件中的方法了。