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