js基础语法

1.JavaScript:基于对象和事件驱动的脚本语言。嵌入到html中用。后缀名:.js

2.JavaScript的作用:
    2.1:交互性:表单验证,异步请求。
    2.2:与平台无关性:只需要浏览器解析,与平台无关。
    2.3:安全性:不能直接访问本地磁盘。

3.JavaScript的组成部分:ECMAScript(JS基础),DOM,BOM。

 

4.JavaScript的特点:需要浏览器解析,是一种弱类型语言。

 

5.页面引入JavaScript的三种方式:

5.1:行内引入:

eg:

  

 

5.2:内部引入:

   eg:

 

5.3:外部引入

 eg:

 

6.JavaScript基础语法:

6.1:js输出

eg:/*Js在html的body中输出*/

document.write("Hello Js");

 

/*弹出一个窗体输出*/

alert("Hello js2");

 

/*在控制台输出*/

   console.log("Hello js3");

6.2:js数据类型:number,string,boolean,undefined,null

6.4:判断变量的类型:type 变量名

6.5:js中判断值是否是非数字不考虑变量数据类型:isNaN(变量)

6.6:==和===

==;在js中,比较是2个变量的值,不考虑数据类型

===在js中,比较的是2个变量的数据类型和值

6.7js中表示false:"",null,undefined,false,NaN,0

7.js中数组的使用:像Java中的集合和数组中合体。

7.1:数组的声明:四种方式

eg://声明数组

var arr1=[1,7,9,11];

 

var arr2=new Array();

arr2[0]=33;

arr2[1]=11;

 

var arr3=new Array(3);

arr3[0]=33;

arr3[1]=11;

arr3[2]=55;

arr3[3]=22;

 

   var arr4=new Array(88,22,66);

 

7.2:向数组中添加元素:三种方式

eg://向数组中添加元素

arr4[3]=77;

//向数组的末尾添加元素

arr4.push(11,33);

//向数组的开头或结尾添加元素

arr4.unshift(44,55);

 

7.3:删除数组中的元素:四种方式

eg://删除数组中最后一个元素

arr4.pop();

//删除数组中第一个元素

arr4.shift();

//删除数组中所有的元素

     arr4.length=0;

   //删除数组中指定位置的元素

delete arr4[4];

 

7.4:修改数组中的元素:两种方式

//删除数组中的元素,再添加新元素(替换数组中元素)

arr4.splice(2,3,99,33);//第一个参数删除起始位置,第二个参数删除,第三个参数                                                                        开始添加的新元素

//修改数组中元素

     arr4[0]=66;

 

7.5:给数组排序:数据名.sort();

8.流程控制语句:if结构,if-else结构,多重if结构,嵌套if结构,switch结构,while循环,

do-while循环,for循环与java中的使用方式一样。

break和continue,return与java中的使用方式一样。

8.1:for-in与Java中的增强版的for不一样:

eg:/*for-in:遍历普通数组,遍历索引*/

var arr1=[1,5,2,4,6];

for(var i in arr1){

document.write(i+"
");

}

 

/*for-in:遍历Json对象,遍历的是对象的属性*/

var ob1={"sname":"肖宁","sage":18,"sex":"中"};

for(var i2 in ob1){

document.write(i2+"
");

}

 

/*for-in:遍历Json对象数组,遍历的是索引*/

var ob2=[{"sname":"肖宁","sage":18,"sex":"中"},{"sname":"洪伟坚","sage":17,"sex":"母"},{"sname":"容海波","sage":99,"sex":"女"}];

for(var i3 in ob2){

document.write(i3+"
");

}

 

9.Js中函数:相当于Java中的方法。函数不调用不执行。

9.1:声明语法:function 函数名(【参数列表】){

函数体;

【return 变量;】

 }

 

函数调用语法:  函数名(【参数列表】);

eg:/*无参无返回值的函数*/

function show1(){

alert("这是一个无参无返回值的函数");

}

 

/*有参无返回值的函数*/

function show2(a,b){

alert("这是一个有参无返回值的函数,参数为:"+a+","+b);

}

 

/*无参有返回值的函数*/

function show3(){

alert("这是一个无参有返回值的函数");

return "哈哈";

}

 

/*有参有返回值的函数*/

function show4(a,b){

alert("这是一个有参有返回值的函数");

return a+b;

}

 

οnclick="show2(1,2)"/>

     

 

9.2:在Js中不能出现重载函数,原因javascript是一种弱类型的语言。参数列表无法区分数据                        类型。

 

9.3:匿名函数:

声明语法:var 变量名=function(【参数列表】){

 函数体;

 【return 返回值;】

   }

调用语法:变量名(【参数列表】);

eg:/*匿名函数*/

var f=function(num1,num2){

alert("这是一个匿名函数,参数为:"+num1+","+num2);

     }

 

 

9.4:系统函数:

 parseInt():试图将其收到的任何输入值转换成整数类型,转换失败则返回NaN,无论成功或失败,最后数据都是number.将数值部分能                                        转,不能转不要。

parseFloat():同上类似

eg:var num1="1a23";

   num1=parseInt(num1);

 

   var num2="3.14";

   num2=parseFloat(num2);

isNaN():判断是否为非数字

isFinite():如果 number 是有限数字(或可转换为有限数字),那么返回 true。否则,如果 number 是 NaN(非数字),或者是正、负                    无穷大的数,则返回 false。

      eg:document.write(isFinite(num4));

eval():会将其输入的字符串当作javascript代码来执行

eg://将String类型当作Javascript执行

eval("alert('你好')");

//将String类型转换为JavaScript对象

var s1="{'sname':'张三','age':18}";

document.write(typeof s1);

document.write("
");

var ob=eval("("+s1+")");

document.write(typeof ob);

document.write("
");

  document.write(ob.sname+","+ob.age);

 

李老师讲的:

/* 类似java的可变参数的用法,来实现重载*/

function add(){

//console.log("-----------"+arguments.length);

var sum = 0;

for(var i=0;i

sum += arguments[i];

}

return sum;

}

 

//另外一种函数实现的方式:  类似匿名内部类方式

 

 

add2 = function(){

console.log("另外一种重要函数实现");

}

 

add2();  //注意:这是函数实现,调用部分一定要写后面,否则调用不到

 

第二点:

 

 

 

你可能感兴趣的:(js)