基本语法一、基本语法1、变量概念:内存中存放数据的容器。声明方式:var变量名//在内存中开辟一块空间var变量名=value//在内存中开辟空间,将数据放入变量名的规则:变量名由字母、数字、下划线、美元符号、中文组成字符,不能以数字开头,不能使用关键字作为变量名。关键字:vartypeofisNaNNumberStringBooleanObjectArrayFunctionfunctionbreakifelseswitchcasedefaultforwhiledocontinueinofDatetopwindownewthisMath=Donotcallequaltocallassignmentinthecode。左边必须是要放入数据的变量,右边必须是具体的数据或者可以得到具体数据的表达式。作用是将右边的数据放入左边的变量中。2.数据类型js中的数据类型:number:numbertypeisNaN(data)-判断转换成数字的数据是否为NaN。小数计算不准确:原因:计算机内部对数字的处理必须转为二进制,有时小数转为二进制会变成死循环,导致计算机存储小数不准确,所以计算结果也不准确。解法:①先乘以10的n次方将两个数都化为整数,计算,除以10的n次方②数。可以对类型字符串进行+操作,将两个小字符串拼接成一个较大的字符串,输出带有document.write的标签。标签必须作为字符串输出,以便解析页面中的标签。单引号字符串不能嵌套单引号字符,双引号字符不能嵌套在双引号字符中,除非引号字符被转义:\boolean:布尔值——描述一个条件成立或失败,只有两个数据:true/falseundefined:undefined——当一个变量已定义但未赋值时,值为未定义(浅灰色),类型也未定义(黑色字符串)一段代码3.算术运算符号:+-*/%赋值运算+=-=*=/=%=是速记比较/关系运算>>=<<======!=!==!=和!==是==和===否定逻辑操作&&||!4.类型转换4.1.无形转换+左右一个是字符串,另一个会转换成字符串进行拼接。算术运算符号将两边转换成数字,用于算术运算和比较运算。运算的左右两边其中一个是数字,另一个会转换成数字进行比较。数据放在分支语句的括号内,作为对象的一个??属性,将转换为布尔类型的非字符串数据。4.2无形转换为string类型,强制转换为numberNumber(data):转换为纯数字字符串空字符串,null,[]转换为0,其余数据转换为NaNparseInt(data):只有整数开头的字符串可以转为整数,其余为NaNparseFloat(data):只有以数字开头的字符串可以转为数字,其余由NaN转为Boolean类型的Boolean(data):0、空字符串、null、Undefined转为false,其余为true为stringString(data):arraytostring,[]去掉;objecttostring-'[objectObject]'data.toString():null和undefined不能使用,其余结果同上2.分支语句的概念:做判断的结构1.单分支if(条件){条件为真时执行的代码段}2、双分支if(条件){条件为真时执行的代码段}else{条件为假时执行的代码段}3、多分支if(条件1){条件1为真时执行的代码段}elseif(条件2){条件2为真时执行的代码段}elseif(条件3){when条件3为真时要执行的代码段}...else{以上条件全部为假时要执行的代码段}多选1执行第一个不为真,则执行第二个。.4.switch多路判断switch(variable){casevalue1:变量===value1时执行的代码段breakcasevalue2:变量===value2时执行的代码段break....default:以上条件都不成立时执行的代码段}break可以省略,后面的case不做判断。直接执行default可以省略多路判断,比多分支效率更高。只判断一个多路判断只能判断同余5,三元运算可以也只能简化简单的双分支条件?条件为真时执行的代码:条件为假时执行的代码整个三元运算表达式可以看作是一个具体的数据进行输出和赋值例子:num=num.length===1?'0'+num:numspeed=speed>0?Math.ceil(speed):Math.floor(speed)3.循环结构学习目的:简化重复1.while(Condition){条件为真时重复执行的代码段}2.do-whiledo{代码段-先执行一次,然后判断条件,后面是否执行取决于条件是否成立}while(condition)3、forfor(initialValuedefinitionsyntax;condition;change){条件时重复执行的代码段istrue}重点:循环执行的过程4.函数理解:存放一段代码的容器定义语法:function函数名(参数1,参数2,...){//形参就是变量name//形参相当于函数中预先定义的变量//如果没有实参给形参赋值——形参默认未定义//形参可以直接为赋值——正式段落meter有一个默认值——只能放在最后一个代码段//如果函数调用后需要得到结果——必须返回结果//return可以防止代码向下执行}的规则函数名:规则跟在变量名后面调用语法相同:var变量=函数名(实参1,实参2,...)
