<style type="text/javascript">
alert("运行JavaScript。。")
</script>2、如果没有声明变量直接使用会报错:ReferenceError: x is not defined如果声明了没有赋值,则该变量的值为undefined
3、单独保存js 文件<script src="test.js" type="text/javascript"></script>
var a=[];
for(var i=0;i<10;a[i++]=i+10);//利用空语句
for(index in a){
document.writeln(a[index]+"<br/>");
}//index保存的是索引值for(var i=0;i<10;i++){
if(i>4) throw new Error("用户自定义错误");
document.writeln(i+"<br/>");
}13、使用with避免重复书写对象 with(object){
statements
} 如:省写了documentwith(document){
writeln( "hello<br/>");
writeln( "hello2<br/>");
writeln( "hello3<br/>");
}14、js的函数即是可重复调用的“程序块”,也是一个Function实例var f=function(parameter){
函数体
}; 例子:var a=function(){ alert("调用匿名函数")};
a(); //函数调用 例:function Person(name,age){
this.age=age;
this.name=name;
this.info=function(){
document.writeln("我的名字是:"+this.name+"</br>");
document.writeln("我的age是:"+this.age+"</br>");
};
}
//创建p对象
var p=new Person("周鹏程",24);
p.info();
//Person类定义了一个方法,通过使用匿名函数使代码更加简洁上面把js中定义的一个函数附加到某个对象上,作为该对象的方法var each=function(arr,fn){
for(var s in arr){
fn.call(null,s,arr[s]);
}
}
each([4,20,3],function(a,b){
document.writeln("数组的第"+a+"个元素是:"+b+"<br/>");
}
);
//调用者.函数(参数1,参数2...)<=>函数.call(调用者,参数1,参数2...)var myfun=function(a,b){
alert("a="+a+"\nb="+b);
}
myfun(1,2);
myfun.call(window,1,2);
var fun2=function(num1,num2){
myfun.apply(this,arguments);
}
fun2(1,2);
myfun.apply(window,[1,2]);//arguments来代表所有参数,arguments本质上是个数组
function Person(name){
this.name=name;
this.info=function(){
alert("我的name是:"+this.name);
}
}
var per=new Person("zpc");
per.info();
var name="window的name";
per.info.call(window);
//p.info()即可引用这个函数,可以使用call()方法指定调用者 function test1(){alert("test1");}
function test1(s){alert("test1"+s);}
test1();//输出test1undefined function Person(name,age){
this.age=age;
this.name=name;
this.info=function(){
alert("info method!");
}
}
var p=new Person("zpc",24);
//alert(p[age]);
alert(p['age']);//也能输出正确的年龄
alert(p.age);
for(proname in p){
document.writeln("p对象的"+proname+"属性值为:"+p[proname]+"<br/>");
}function Person(age,name){
this.name=name;
this.age=age;
this.info=function(){
document.writeln("姓名:"+this.name+"</br>");
document.writeln("年龄:"+this.age+"</br>");
}
}
var p1=new Person(23,"周鹏程");
p1.info();
//p1.walk();这里还没有给Person加walk方法
//所有的Person实例共享一个walk方法,节约内存
Person.prototype.walk=function(){
document.writeln(this.name+"正在慢慢溜达。。<br/>");
}
document.writeln("<br/>");
var p2=new Person(25,"鸟鹏");
p2.info();
p2.walk();
p1.walk();
var per=new Object(); per.name="鸟鹏"; per.age=24; per["gender"]="男";//js允许动态添加属性,js对象的本质是关联数组 document.writeln(per.name+"<br/>"+per.age+"<br/>"+per.gender);js允许将一个已有的函数添加为对象的方法
var per=new Object();
per.name="鸟鹏";
per.age=24;
function abc(){
document.writeln("对象的name属性:"+this.name+"<br/>对象的age属性:"+this.age+"<br/>");
}
per.info=abc;//添加abc函数为per对象的方法
per.info();
var per=new Object();
per.name="鸟鹏";
per.age=24;
per.info=new Function("document.writeln('对象的name属:'+this.name);'<br/>';document.writeln('对象的age属性:<span style="font-family: Arial, Helvetica, sans-serif;">'+this.age);"); </span><span style="font-family: Arial, Helvetica, sans-serif;">per.info();</span> 3.使用json语法创建对象 var p={
name:"zpc",
age:32
};
alert(p);
//以上就是用json语法创建的p对象
var person={
name:"周鹏程",
gender:'male',
//属性值可以是任意的基本类型,甚至是json语法创建的对象
son:{
name:"鸟鹏",
age:12
},
info:function(){
document.writeln("姓名:"+this.name);
document.writeln("gender:"+this.gender);
document.writeln("son:"+this.son);
}
}
person.info();
//以上就是用json语法创建的person对象
事实上json语法不仅仅可以用于创建对象,使用JSON语法创建数组也是非常常见的情形
传统创建数组方式一:
var a=new Array();
a[0]='zpc';
a[1]='niao';
传统创建数组方式二:
var a=new Array('zpc','niao');
使用JSON创建数组:
var a=['zpc','niao'];
//一个复杂的JSON对象
var person={
name:"周鹏程",
age:24,
//第三个属性是数组
schools:['小学','中学','大学'],
//第四个属性是对象数组
parents:[
{
name:'father',
age:50,
address:'shanghai'
},
{
name:'mother',
age:49,
address:'nanjing'
}
]
};
alert(person.parents);
alert(person.parents[0].name);
//事实上json已经发展成为一种轻量级的、跨语言的数据交换格式,成为了xml数据交换格式的有力竞争者
JavaScript--基于对象的脚本语言学习笔记(一),布布扣,bubuko.com
原文地址:http://blog.csdn.net/hellozpc/article/details/37704959