JavaScript基本语法学习
1.1 JS的组成
JavaScript语法(ECMScript)、页面文档对象模型(DOM)、浏览器对象模型(BOM)
1.2 变量本质
本质:变量是程序在内存中申请的一块用来存放数据的空间。
js的变量数据类型是只有程序在运行过程中,根据等号右边的值来确定的
js是动态语言 变量的数据类型是可以变化的 var x = 10; // x 是数字型 var x= 'red' ; //x 是字符串型
1.3 数据类型的分类
JS把数据类型分为2类
· 简单数据类型(Number,String,Boolean,Undefined,Null)
· 复杂数据类型(object)
数字型 Number
字符串型String
JS可以用单引号嵌套双引号,或者用双引号嵌套单引号(外双内单,外单内双)
var strMsg = '我是"高富帅"程序猿'; var strMsg2 = "我是'高富帅'程序猿";
字符串长度.length
var str = 'my name is shan'; console.log(str.length);
arguments的使用
当我们不确定有多少个参数传递的时候,可以用argumengts来获取。在JavaScript中,argumengts实际上它是当前函数的一个内置对象。所有函数都内置了一个arguments对象,
arguments对象中存储了传递的所有实参。
function ff(){ console.log(arguments);//里面存储了所有传递过来的实参 } ff(1,2,3);
arguments展示形式是一个伪数组,因此可以进行遍历。伪数组具有以下特点:
·具有length属性
·按索引方式储存数据
·不具有数组的push,pop等方法
冒泡排序
//利用函数冒泡排序sort排序 function sort(arr){ for(var i = 0; i<arr.length-1; i++){ for(var j = 0;j<arr.length-i-1;j++){ if(arr[j]>arr[j+1]){ var temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } return arr; } var arr1 = sort([3,5,3,7,12]); console.log(arr1);
判断是否是闰年
//用户输入年份,输出当前年份2月份的天数 function backDay(year){ var year = prompt('请输入年份'); if(isRunYear(year)){ alert('当前年份是闰年,2月份有29天'); }else{ alert('当前年份是平年,2月份有28天'); } } backDay(); // 利用函数判断闰年 function isRunYear(year){ var flag = false; if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0){ flag = true; } return flag; }
函数2种声明方式
//1.利用函数关键字定义函数(命名函数) function fn(){ } fn(); //2.函数表达式(匿名函数) //var 变量名 = function(){}; var fun = function(){ console.log('我是函数表达式'); } fun(); //(1)fun是变量名 不是函数名 //(2)函数表达式声明方式跟声明变量差不多,只不过变量里面存的是值 而函数表达式里面存的是函数 //(3)函数表达式也可以进行传递参数
双重for循环
<script type="text/javascript"> //1.双重for循环 语法 //for(外层的初始化变量;外层的条件表达式;外层的操作表达式){ // for(里层的初始化变量;里层的条件表达式;里层的操作表达式){ // //执行语句; // } //2.可以把里面的循环看做是外层循环的语句 //3.外层循环循环一次,里面的循环执行全部 for(var i =1; i<3; i++){ console.log('这是外层循环第'+i+'次'); for(var j = 1;j<=3; j++){ console.log('这是里层循环第'+j+'次') } } </script>
九九乘法表
var nei = ''; for(var i = 1; i<=9;i++){ for(var j =1; j<=i; j++) { nei += j +'x'+i +'=' +j*i+'\t'; } nei +='\n'; } console.log(nei);