Hellow 小伙伴们!今天咱们来聊一聊有关于JS的一些小知识吧。
首先我们来了解下JS和Java是啥关系?
很多人会把JS和Java联系到一起,但是这里两者之间没啥关系,这只是当年JS的“蹭热度”行为。
JS的组成;
ECMAScript、BOM、DOM
ECMAScript:是一种规则,JS就是在其规定和约束下进行运行的。
BOM:浏览器对象模型,可以对浏览器窗口进行操作。
DOM:文档对象类型,它会将页面映射成一个多层节点结构。
JS的写入方式;
主要分为外联和内部这两种方式:
内部写法:<script>
在script的这个标签里写入JS脚本语言
</script>
外联写法:
<script src=“相对路径”> </script>
如何声明变量?
前阶段常用的有:
var a=1;
其中a是指变量名,1指的是赋值进a中的内容。
变量有哪些类型?
数值类型(number):数字0~9
字符类型(string):“abc”,‘abc’ 被单引号或者双引号,引起来的部分。
定义了未赋值类型(undefined):变量被声明但是没有进行赋值,此时的变量就undefined未定义。
布尔值类型(boolean):true,false (真,假)
对象类型(object):{ }object
数组类型(array):[ ]
可用关键字: typeof 变量名 来查询变量类型。
变量命名规则
1.语义化,前缀就能表示出这个变量的类型
2.开头必须为字母或者$或者_
3.关键字和保留字不能用做变量名。
JS中的运算符有哪些?
算术运算符: +加法 -减法 *乘法 /除法 %取余
赋值运算符: = += -= *= /= %=
关系运算符: < <= > >= != ===
逻辑运算符: && || !
自增自减运算: ++ –
++a
前自增是先加1,再使用操作数的值
a++
后自增是先使用操作数的值,再加1
如何打印代码
向页面中打印内容
document.write(“这是一些文本内容”);
向浏览器的控制台打印信息
console.log(“hello world”);
向浏览器窗口打印内容
alert();
NaN的概念和应用
是一种特殊的Number类型,代表意外转换的数字,NaN和任何东西都不相等。
alert(NaN == NaN);返回false
认识isNaN()函数,该函数判断括号内的值是否是NaN,是就返回true,不是就返回false
alert(isNaN©);
变量不同类型之间的自动、手动类型转换
转换成字符型:
toString()
num.toString();转换成字符串。 将num从数值型变成字符型
toFixed()
num.toFixed(n);转换成字符串的同时保留n位小数
转换成数值:
parseInt();转换成整数,可以接受两个值
parseFloat();转换成浮点数
关于浮点数:
Math.round()四舍五入取整浮点数。
Js主要语法结构
顺序结构
按照代码书写顺序,自上而下依次执行
选择(分支)结构
根据不同的条件,选择执行不同的过程
1 if 语句
if(条件){ 执行语句 }
2 if - else 语句
if (条件) {执行语句1,为真时执行} else {执行语句2,为假时执行 }
3 switch()多分支语句
switch(){
case 0:alert(“零”);
break;
case 1:alert(“一”);
case 2:alert(“二”);
default:alert(“不识别的数字”);
}
循环结构
重复执行某个或某段代码,当遇到特定的条件时结束
隐式类型转换:
1 运算中的隐式类型转换:
+号有两种含义:数学中的+号运算符;字符串的拼接。优先字符串拼接,所以在检测到+号左右两边存在字符串的时候,会自动将另一边不是字符串的数据,转成字符串,再进行操作
当进行- * / % 的时候,默认将运算符两边的数据类型隐式转换成数字类型再进行运算
2 if(小括号)内的隐式类型转换:
if()中只需要布尔值,那么在if判断中,会把括号内所有的数据类型,都隐式转换成布尔型。
if()中,非零数字都会转成true,非空字符串都会转成true;这是两条基础规则。
while循环
while(条件){ 执行语句 }
当条件为true时,会一直重复执行花括号内的执行语句。
do-while循环
do{
当条件为真,执行这里的语句
}while(条件){
当条件为假,执行这里的语句
}
当条件为真时,执行do的语句,当条件为假时,执行while的语句 do-while无论结果为真还是为假,都会执行一次
continue关键字
continue表示终止本次循环,还执行后面的循环。也可以理解成跳过本次循环中剩下的语句,执行下一次循环。
break关键字
break表示完全结束一个循环,跳出循环体执行循环后面的语句。
for循环
for(语句1;语句2;语句3){
需要执行的代码块
}
语句1:在循环体开始前执行----计数器
语句2:循环的条件--------停止的条件
语句3:在循环体被执行后执行---改变计数器
小技巧:在知道执行次数时用for,在无法判断循环次数时用while
for循环的嵌套
for循环嵌套时,注意各个循环的计数器变量名不能重复,否则会变成死循环
死循环的概念和作用
无法靠自身控制结束的循环,称为死循环
不知道要循环几次的问题,利用死循环的原理,每次判断一个条件,直到满足条件,利用break跳出循环.
Firefox和Chrome和IE浏览器的 Debug工具使用
断点:可以让我们看到程序一行一行的执行效果
1.在浏览器的控制台单击行号打断点
2.在代码中,需要断点的位置,添加关键字debugger
conosle.log
函数的定义(创建):声明式和赋值式
1 通过关键字function声明
function fn( ){ }
function---为声明函数的关键字,指出这是一个函数
fn ------是函数的名称,类似于永来存储函数的变量
() ------为函数的参数,多个参数用 , 隔开
{} ------放置函数体,用于执行时,所要编译的代码段
2 通过变量赋值(未命名函数)
var fn = function( ){ };
这种方式下,虽然这个函数没有名字,但是这个函数赋值给了fn,因此通过变量fn也能调用到这个函数。
以上两种声明方式等价 函数名/变量名+() 调用执行
函数的调用
fn(); ----函数名+()
参数的声明和传递
function fn(a){ //a为形参
console.log(a); //打印出123
}
fn(123); //123为实参
形参和实参
形参的数量比实参的数量多,多出来的形参,为undefined;
形参的数量比实参的数量少,多出来的实参,传递到arguments对象中;
形参的数量与实参的数量相等,一 一对应。
return关键字
return的作用:1.返回值;2.终止程序
arguments对象
arguments.length为数组的长度----当前传进来几个参数
(从0开始到length-1结束)
好了,各位小伙伴下次再见哦!
肝帝在此,欢迎各位讨论留言哦!