JavaScript的引入方式
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><!--[1]js引入的方式一 alert:弹窗--><script type="text/javascript"> alert("js学习"); </script><!--[2]js的引入方式2 type:引入否认类型--><script src="js/test.js" type="text/javascript" charset="utf-8"></script><!--切记:[1]两种引入方式如果都使用了,那么两种js代码都会执行 [2]在书写js的时候不要把两者书写二合一--></head><body></body>
</html>
数据类型
A、number(数字类型)
B、string(字符串类型)
C、boolean(布尔类型)
D、object(对象类型)
特殊数据类型
A、undefined(未定义的) 原因:只是声明了变量,没有赋值
B、NaN(not a number )不是一个数字 原因:把一个字符串(例如:123a)强制转换造成
C、null :对象的空
运算符
01 算数运算符
+ - * / % ++ – 三目运算
02逻辑运算符
& | ! && || < > >= <= != ^
03连接运算符
+
04特殊运算符
==(等值符 使用较多)
比较的时候先比较类型 ,类型一致比较内容,类型不一致统一的转化成number,然后在比较内容
===
(等同符)
比较的时候先比较类型,类型不一致直接返回false,类型一致在比较内容,内容一致返回true ,不一致返回false;
注意:
在js中比较的时候用的就是这两种,没有equals这个方法
控制语句
<script type="text/javascript">var a=100;//js中for循环中的变量不是局部的变量是全局的, 在js中for循环不是一个函数for(var i=1;i<=9;i++){
// var a=1;for(var j=1;j<=i;j++){
/*直接输出到浏览器上*/ document.write(i+"*"+j+"="+i*j+" "); } document.write("<br />");}alert(a); </script>
函数的三种方式声明方式
函数的执行符:()–函数的执行符–jquery的封装原理
<html><head><meta charset="utf-8"><title></title><script type="text/javascript">/***********[1]函数声明的三种方式**********************/function demo1(){
alert("函数声明方式一");}var demo2= function(){
alert("函数声明方式二")}//函数本身也是一个对象var demo3=new Function("alert('函数声明方式三')");</script>
JS中参数的传递
A、js中形参的个数和实参的个数可以不一致
B、js中没有方法的重载 ,重名的方法只会覆盖
<html><head><meta charset="utf-8"><title></title><script type="text/javascript">/***********[2]函数的参数的问题***************************/ function demo4(a,b,c){
alert(a+"***"+b+"***"+c);}function demo4(a,b){
alert(a+"--"+b);}//demo4(12,"sxt"); //12--sxt//demo4(12); //12--undefined//js中形参的个数和实参的个数可以不一致//demo4(12,"sxt",13); //12--sxt</script>
函数的返回值
<html><head><meta charset="utf-8"><title></title><script type="text/javascript">/***********[3]JS中函数的返回值*******************/function demo5(a){
alert(a);return "sxt";}//没有定义方法的返回值默认返回 undefined//alert("函数的返回值:"+demo5(20));function demo6(uu){
alert(uu());return 500;}var ii=function(){
return "bjsxt"; }demo6(ii); </script>
数组
数组的声明:
function demo1(){
//方式一var arr1=new Array(); //方式二 5:数组的长度var arr2=new Array(5); //方式三 具体的元素var arr3=new Array(1,1.2,true,'bjsxt',new Date());//方式四 (使用较多)var arr4=[1,1.2,new Date(),true,"字符串"]; //控制台输出console.log(arr4); }
数组的使用 (js中数组的下标是可以不连续的,如果不连续默认补充empty)
arr[0]=“123”;
arr[10]=1;
中间元素用empty补充
数组的扩容
function demo3(){
var arr =[1,1.2,new Date(),false,"呵呵"];console.log("前:"+arr);//数组的扩容
// arr.length=10;//数组的缩小arr.length=3;console.log("后:"+arr); }
数组的遍历
function demo4(){
var arr =[1,1.2,new Date(),false,"呵呵"];//普通的for循环
/*for(var i =0;i<arr.length;i++){ console.log(arr[i]); }*/
增强for循环 u:是代表的是数组的下标不是具体的数组中的元素for(var u in arr){
console.log(arr[u]);}}
数组中常用的方法
function demo5(){
var arr =[1,1.2,new Date(),false,"呵呵"]; console.log("前:"+arr);// 删除并返回数组的最后一个元素
// var po= arr.pop();//向数组的末尾添加一个或更多元素,并返回新的长度。
// var po= arr.push("我们");//1:代表的是删除开始的位置 2:删除的个数
// arr.splice(1,2); //添加的操作 2:开始的下标 0:删除的个数 :添加的内容arr.splice(2,0,"添加"); console.log("后:"+arr);}