⑴ 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文件中調用另一個js中的方法(詳細請進)
方法:直接調用對方的函數就行。
步驟:
1、兩個或者多個js文件載入到同一個頁面中
2、js文件中的方法直接相互訪問。
示例:
a.js中定義一個方法
functiona(){
}
b.js中定義一個方法
functionb(){
}
在a.js中訪問b.js中方法
b();//就可以直接訪問b方法
⑶ js構造函數中如何調用prototype內方法
取消
首頁
編程
手機
軟體
硬體
安卓
蘋果
手游
教程
平面
伺服器
首頁 > 網路編程 > JavaScript > javascript技巧 > js構造函數constructor和原型prototype
js構造函數constructor和原型prototype原理與用法實例分析
發布時間:2020-03-02 09:43:39 作者:葉落森
本文實例講述了js構造函數constructor和原型prototype原理與用法。分享給大家供大家參考,具體如下:
所有引用類型(函數,數組,對象)都擁有__proto__屬性(隱式原型)
所有函數擁有prototype屬性(顯式原型)(僅限函數)
原型對象:擁有prototype屬性的對象,在定義函數時就被創建
__proto__, prototype和constructor
下面這三個屬性的定義非常重要,始終貫穿在原型中。
prototype:此屬性只有構造函數才有,它指向的是當前構造函數的原型對象。
__proto__:此屬性是任何對象在創建時都會有的一個屬性,它指向了產生當前對象的構造函數的原型對象,由於並非標准規定屬性,不要隨便去更改這個屬性的值,以免破壞原型鏈,但是可以藉助這個屬性來學習,所謂的原型鏈就是由__proto__連接而成的鏈。
constructor:此屬性只有原型對象才有,它默認指回prototype屬性所在的構造函數。
構造函數的特點:
a:構造函數的首字母必須大寫,用來區分於普通函數
b:內部使用的this對象,來指向即將要生成的實例對象
c:使用New來生成實例對象
function定義的對象有一個prototype屬性,使用new生成的對象就沒有這個prototype屬性(Person是一個對象)
Person是一個對象,它有一個prototype的原型屬性(因為所有的對象都一prototype原型!)prototype屬性有自己的prototype對象,而pototype對象肯定也有自己的construct(構造)屬性,construct屬性有自己的constructor(構造函數)對象,神奇的事情要發生了,這最後一個
⑷ javascript中怎麼調用js方法
1、引用js文件,路徑一定要對
比如
<scriptsrc="js/hello.js"></script>
2、通過function名調用js中的方法,
比如
<script>hello(參數1,參數2)</script>
⑸ 如何在js函數中調用另外一個函數
具體調用情況需要看js方法是怎麼寫的。
①如果是最簡單的一個方法:functiuon dome1(){ //.代碼塊}//調用方法就是:dome1()。
②如果是閉包形式:function dome1(){ function dome2(){ } return function dome3(){ }}//這里可以訪問dome1方法內的dome3方法,dome2方法對與dome1方法外部是不可見的。
③如果是一個對象形式的:var obj={ dome1:function(key,value){}, dome2:function(){}};//訪問dome1和dome2方法:obj.dome1(1,2);obj.dome2()。
他的情況需要看具體的代碼。
(5)js如何調用方法擴展閱讀
函數是由事件驅動的或者當它被調用時執行的可重復使用的代碼塊。JavaScript函數語法,函數就是包裹在花括弧中的代碼塊,前面使用了關鍵詞 function: 當調用該函數時,會執行函數內的代碼。
可以在某事件發生時直接調用函數(比如當用戶點擊按鈕時),並且可由 JavaScript 在任何位置進行調用。
創建函數的語法
function函數名 (var1, var2, ..., varX) {代碼... }
function函數名 (var1, var2, ..., varX) {代碼... }
var1, var2 等指的是傳入函數的變數或值。{ 和 } 定義了函數的開始和結束。
注意:無參數的函數必須在其函數名後加括弧:
function函數名 () {代碼... }
function函數名 () {代碼... }
注意:別忘記 JavaScript 中大小寫字母的重要性。"function" 這個詞必須是小寫的,否則 JavaScript 就會出錯。另外需要注意的是,必須使用大小寫完全相同的函數名來調用函數。
⑹ 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調用對象中的方法
var o = {a:"abc", b:{ c:function(param){ alert(this.a); //這里的this指向的不是o而是b,所以this是沒有a屬性的,這里應該彈出undefined alert(param); } }, d:function(){ this.b.c.call(this,'dddd');//這樣就行了,就可以改變this的指向為d的this }};
⑻ Js怎麼調用外部Js
1、首先需要新建HTML文件。
⑼ js如何調用指定的方法
<script language="JavaScript">
<!--
function a()
{
alert(9);
}
function b(func)
{
eval(func+'()');
}
b('a');
//-->
</script>