這裡給大家整理匯總了一些javascript的基礎函數,都是比較常用和實用的。整理出來也有助於大家更好的理解javascript。 複製程式碼 程式碼如下: <br /> /*建立函數與字面量函數*/<br /> /*<br /> function add(){<br /> alert("函數建立成功")<br /> };<br /> var testfunction=function(){<br /> alert("這是匿名函數");<br /> };<br /> add(); //呼叫函數<br /> testfunction();//呼叫字面量函數<br /> */<br /> /* <br /> var testobj=new Object(); //建立物件<br /> testobj.run=function(){ //給物件建立方法<br /> alert("這是物件內部的方法");<br /> };<br /> testobj.run(); //呼叫物件的方法<br /> */<br /> /*建立函數物件*/<br /> /*<br /> function ball(){<br /> }<br /> ball.name1="testing"; //為函數物件建立屬性<br /> alert(ball.name1); //存取函數屬性<br /> alert(typeof ball)<br /> */<br /> /*函數的引用*/<br /> /*<br /> function myFunction(message){<br /> alert(message);<br /> }<br /> var ptr=myFunction; //將函數的參考傳遞給變數<br /> ptr("Testing"); //變數呼叫函數<br /> */<br /> /*將函數的引用傳遞給物件*/<br /> /*<br /> function sayName(name1){<br /> alert(name1);<br /> }<br /> var obj1=new Object();<br /> var obj2=new Object();<br /> var obj3=new Object();<br /> obj1.sayMyName=sayName; //將引用傳遞給物件的變量,形成物件的方法<br /> obj2.sayMyName=sayName;<br /> obj3.sayMyName=sayName;<br /> obj1.sayMyName("張三") //呼叫物件的方法<br /> obj2.sayMyName("李四");<br /> obj3.sayMyName("王五")<br /> */<br /> /*<br /> function add(){<br /> }<br /> add.message="chaiyesong"<br /> var ptr1=add;<br /> var ptr2=add;<br /> alert(ptr1.message);<br /> alert(ptr2.message)<br /> add.message="123";<br /> alert(ptr1.message)<br /> alert(ptr2.message)<br /> */<br /> /*引用指向另一個變數*/<br /> /*<br /> function add(){<br /> alert("one");<br /> }<br /> var ptr=add;<br /> ptr=function(){ //創建了另一個叫做myFunctionPtr的函數而不是修改它<br /> alert("ptr")<br /> }<br /> add=function(){ //引用指向了另一個函數,並修改了函數的引用<br /> alert("two")<br /> }<br /> add()<br /> ptr()<br /> */<br /> /*建立函數物件*/<br /> /*<br /> function Ball(message){<br /> alert(message)<br /> }<br /> var ball0=new Ball("testing")<br /> ball0.name1="ball-0"<br /> alert(ball0.name1)<br /> function Ball(message){<br /> alert(message)<br /> }<br /> var ball0=new Object()<br /> ball0.constuct=Ball; //將函數的引用指向了一個物件的建構器<br /> ball0.constuct("ceshiceshiceshi") //由這個物件的建構器執行此函數<br /> ball0.name1="tesing"<br /> alert(ball0.name1)<br /> function Test(){<br /> }<br /> alert(Test.prototype) //共享屬性<br /> */<br /> /*新增共享屬性*/<br /> /*<br /> function Fish(naem1,color1){<br /> this.name1=naem1<br /> this.color1=color1<br /> }<br /> Fish.prototype.LivesIn="water" //新增共享屬性<br /> Fish.prototype.price=20<br /> var fish1=new Fish("mackrel","gray")<br /> var fish2=new Fish("goldfish","orange");<br /> var fish3=new Fish("salmon", "white");<br /> for (var i=1; i<=3; i )<br /> {<br /> var fish=eval("fish" i); // 我只是取得指向這條魚的指針<br /> alert(fish.name1 "," fish.color1 "," fish.LivesIn "," fish.price);<br /> }<br /> */<br /> /* <br /> function Employee(name, salary)<br /> {<br /> this.name=name; <br /> this.salary=salary;<br /> }<br /> Employee.prototype.getSalary=function getSalaryFunction()<br /> {<br /> return this.salary;<br /> }<br /> Employee.prototype.addSalary=function addSalaryFunction(addition)<br /> {<br /> this.salary=this.salary addition;<br /> }<br /> var boss1=new Employee("Joan", 200000);<br /> var boss2=new Employee("Kim", 100000);<br /> var boss3=new Employee("Sam", 150000);<br /> alert(boss1.getSalary()); // 輸出 200000<br /> alert(boss2.getSalary()); // 輸出 100000<br /> alert(boss3.getSalary()); // 輸出 150000<br /> */<br /> /*匿名函數*/<br /> /*<br /> (function(x,y){<br /> alert(x y)<br /> })(2,3)//此函數自我執行的能力<br /> */<br /> /*執行並且呼叫函數*/<br /> /*<br /> var f1=function(){<br /> return "testing"<br /> }<br /> alert(f1())<br /> */<br /> /*將自我執行的結果給變項*/<br /> /*<br /> var f2=function(){<br /> return "ok"<br /> }()<br /> alert(f2)<br /> */<br /> // (<br /> // function(){<br /> // alert("fa")<br /> // }()<br /> // )<br /> /*<br /> function box(){<br /> var user='Tt'<br /> return unction(){<br /> return user;<br /> }<br /> }<br /> alert(box()()) //呼叫內嵌函數<br /> */<br /> // var b=box()<br /> // alert(b())<br /> /*透過閉包函數實施自動加*/<br /> /*<br /> function box(){<br /> var age=100<br /> return function(){ //所呼叫的其實是這個方法,而實現了在記憶中駐留資料的時間<br /> age <br /> return age;<br /> }<br /> }<br /> var b=box()<br /> alert(b())<br /> alert(b())<br /> alert(b())<br /> */<br /> /*開始版*/<br /> /*<br /> function box(){<br /> var arr=[] //申明一個陣列<br /> for (var i = 0; i <5; i ) {<br /> arr[i]=function(){ //每一個以函數賦值給了每個元素<br /> return i;<br /> } <br /> }<br /> return arr; //回傳一個陣列<br /> }<br /> var b=box() //將回傳的陣列賦值給b<br /> document.writeln("陣列的長度為:" b.length "<br />") //傳回陣列的長度<br /> for (var i = 0; i < b.length; i ) {<br /> document.writeln("匿名函數傳回的值為:" b[i]() "<br />") //執行此函數每個元素的值為5,因為最後一個元素的值為5<br /> };<br /> */<br /> /*改良版*/<br /> /*<br /> function box1() {<br /> var arr1 = [];<br /> for (var i = 0; i < 5; i ) {<br /> return num;<br /> })(i); //且傳參<br /> }<br /> return arr1;<br /> }<br /> var b1 = box1(); //返回時數組<br /> for (var i = 0; i < b1.length; i ) {<br /> document.writeln("改良後 輸出的結果為:")<br /> document.writeln(b1[i] "<br />"); //這裡回傳的是陣列,直接列印即可<br /> }<br /> */<br /> //測試版<br /> /*<br /> var testarr=[];<br /> for (var i = 0; i < 5; i ) {<br /> testarr[i]=function(){<br /> return i;<br /> }<br /> };<br /> document.writeln("測試板的長度為:" testarr.length "<br >")<br /> for (var i = 0; i < testarr.length; i ) {<br /> document.writeln("測試版第" (i 1) "次" testarr[i] "<br />")<br /> };<br /> var aa=function(){<br /> return 3<br /> }<br /> document.writeln("測試版測驗的結果" aa)<br /> */<br /> /*改良版3*/<br /> /*<br /> function box3() {<br /> var arr3= [];<br /> for (var i = 0; i < 5; i ) {<br /> arr3[i] = (function (num) {<br /> return unction () { <br /> return num; <br /> }<br /> })(i);//自我執行的結果賦值給每個元素,且執行完了,將其執行的結果賦值給了每個元素<br /> }<br /> return arr3;<br /> }<br /> var b3= box3();<br /> for (var i = 0; i < b3.length; i ) {<br /> document.writeln(b3[i]() "<br />"); <br /> }<br /> */<br /> /*js函數教學網址://http://www.cnblogs.com/ttcc/p/3763437.html*/<br /> /*閉包中的this指定的物件是window*/<br /> /*<br /> var user='The Window00';<br /> var obj={<br /> user:'The Window001',<br /> getUserFunction:function(){<br /> return unction(){<br /> return this.user;<br /> }<br /> }<br /> }<br /> document.writeln("傳回this指定的物件" obj.getUserFunction()())<br /> */<br /> // function box(count1){<br /> // var i=12;<br /> // for (var i = 0; i < count1; i ) {<br /> // document.writeln(i);<br /> // }<br /> // }<br /> // var i=10<br /> // box(2)<br /> /*閉包執行完畢,立刻清除記憶體資料*/<br /> /*<br /> function box(count) {<br /> (function () {<br /> for (var i = 0; i<count; i ){<br /> }<br /> })();<br /> document.writeln(i); //報錯,且無法存取<br /> }<br /> box(2);<br /> */<br /> /*透過閉包存取隱私權屬性*/<br /> /*<br /> function Box() {<br /> var age = 100; //私有變數<br /> function run() { //私有函數<br /> return '在運作中...』;<br /> }<br /> this.get = function () { //對外公共的特權方法<br /> return age run();<br /> };<br /> }<br /> var box = new Box();<br /> alert(box.get());<br /> function Person(value) {<br /> var user = value; //這句話可以省略<br /> this.getUser = function () {<br /> return user;<br /> };<br /> this.setUser = function (value) {<br /> user = value;<br /> };<br /> }<br /> */<br /> /*單例模式*/<br /> /*<br /> var box = function () {<br /> var user = 'TT'; //私有變量<br /> function run() { return '使用中...』; <br /> }<br /> return {<br /> publicGo : function () { return 🎜>;<br />;<br />; }<br /> };<br /> }();<br /> alert(box.publicGo());<br /> */<br /> /*單例模式*/<br /> /*<br /> function Desk() {<br /> //定義了一個函數<br /> }<br /> var box = function () {<br /> var user = 'TT'; 🎜> function run() { > return '使用中...』; <br /> }<br /> var desk = new Desk(); //實例化自訂物件<br /> desk.publicGo = function () {<br /> return user run(); //給予自訂函數定義方法<br /> };<br /> return desk;<br /> }();<br /> alert(box.publicGo());<br /> */<br /> 上面就是個人整理的javascript基礎函數了,朋友仔細研究研究,希望大家能夠喜歡