FavoriteLoading
0

我的php学习第九天之javascript篇

昨日回顾

变量

一个对象,由属性方法

在现实世界有很多数据,比如:一个人有身高、体重、姓名、年龄,在计算机中用一种叫“变量”的符号来存储数据。变量可以看成一个“房间302”,变量是存在于内存中的,计算机关机,变量将消失。

只有网页运行了,网页的变量才会存在内存中;

变量是临时存储数据的地方;

(1)声明变量:使用var关键字进行定义

定义单个变量:var name;

同时定义多个变量:var name,sex,age,edu;

注意:每一个JS语句,都要以分号“;”结束,但“;”不是必须的。

(2)给变量赋值

给变量赋值,使用“=”来赋值,“=”表示的不是等于的意思,而是将“=”右边的表达式赋给左边的变量。

所谓“表达式”可以是一个值,也可以是一个运算式子;

比如:a = b + 10;     a = 100;    c = (10*2-10)5

(3)变量的命名规则

可以是a-z、A-Z、0-9、_这些字符来定义变量;

开头只能是字母和下划线开头,不能是数字;

变量名称不能是关键字;比如:var  case  switch  while  for等

多个单词构成的变量的命名方式:

“驼峰式”命名:getUserName

“下划线”命名:get_user_name

<a  href=“http://www.sina.com.cn”>新浪网</a>

CSS中所有的值,都不能加引号;

 

数据类型

JS中的数据类型:

(1)基本数据类型:只能存一个值

数值型:整数和浮点型。

有一个 特殊的值NaN(Note a Number,当将其它类型转成数值时,转不过去,将返回NaN

 

字符型:加了引号的字符串。

A = “重蔚自留地”;

字符型数据中,内外引号不能一致,也就是说外层是双引号,内层必须是单引号;

A = “Welcome ‘TO’ guangzhou”

在双引号使用双引号,但需要加转义字符

在单引号内使用单引号,需要加转义字符

在字符串中输出反斜线(),也需要加转义字符

布尔型:表示真和假,取值:true和false

Undefined:未定义型,表示一个变量定义了,但没有赋值,将返回undefined

Null空型,表示一个变量没有存储有效数据或一个对象不存在时,都将返回null

 

写程序的流程

(A)声明变量

(B)给变量赋值

(C)业务逻辑

(D)输出结果

(2)复合数据类型:可以存多个值

 

 

运算符

运算符,就是执行运算的符号。比如:+(加) –(减) *(乘) /(除)

Var a = 10;

Var b = 20;

Var result = a + b - 10;   //a和b可以称为“操作数”

运算符的分类:算术运算符、赋值运算符、比较运算符、逻辑运算符、三元运算符、特殊运算符、字符串运算符。

一、算术运算符:+-*/%++--

%:取余运算符,两个数相除取余数(求一个数是否是偶数)。比如:10%2=0;10%3=1

++:加1运算符,有两种表示方式:前加和后加

i++,先将i的值赋给前面的变量(先赋值后加1),然后再将i的值加1。展开后:i=i+1

++i,将i的值加1后赋给前面的变量(先加1再赋值);

--:减1运算符,有两种表示方式:前减和后减

i--,先将i的值赋给前面的变量(先赋值后减1),然后再将i的值减1。展开后:i=i-1

--i,将i的值减1,再赋给前面的变量(先减1再赋值)

//(1)后加运算符

var a = 10;

var b = a++;   //b=10,a=11,先将a的值赋给变量b,然后再将a的值加1,

var result = "a="+a+",b="+b;

document.write(result);

//(2)前加运算符

document.write("<hr />");

var a = 10;

var b = ++a //将a的值加1后,赋给变量b。b=11,a=11

var result = "a="+a+",b="+b;

document.write(result);

//(3)后减运算符 i--

var a = 10;

var b = a--;   //先将a的值赋给变量b,再将a的值减1。a=9 ,b=10

var result = "a="+a+",b="+b;

document.write("<hr>"+result);

//(4)前减运算符

var a = 10;

var b = --a;  //先将a的值减1,再将a赋给变量b。a=9 , b =9

var result = "a="+a+",b="+b;

document.write("<hr>"+result);

 

//实例:输出1-50之间所有的偶数

for(var i=1;i<=50;i++)

{

       //判断:如果不是偶数则不输出

       //如果i%2的余数为0,则是偶数

       if(i%2==0)

       {

              document.write(i+" ");

       }

}

 

二、字符串运算符:+、+=

Var a = 10;

Var b = “20”;

Var c = a + b;  //c=“1020”

如果两个操作数a和b,都是数值,则执行“加法”运算;

如果其中一个操作数是字符串,则执行“连接”运算;

 

Var a = 10;

Var b = 20;

b += 10;   //展开后b = b+10 = 30

b += “abc”;  //展开后b=b+“abc”= “30abc”

 

三、赋值运算符:=+=-=*=/=%=

A = 10;

A += 10;  // 展开后A=A+10=20

A-=10;   //展开后 A=A-10 = 0

A*=10;   //展开后 A=A*10=100

 

for(条件初始化;条件范围;变量递增)

{

       要循环的输出的内容;

}

条件初始化:声明一个变量,并给变量赋一个值;举例:var i=1;

条件范围:应该是大于或小于的一个范围,如果不符号该条件范围,则退出循环;

变量递增:i++

 

四、比较运算符:><>=<===!====!==

说明:两个操作数进行比较运算,将产生几个结果:true和false

“==”两个操作数值一样(类型可以不一样),则返回true,反之,返回false。

“===”两个操作数的值和类型一样,则返回true;反之,则返回false。

比较运算符要和条件判断语句(if语句)一起使用;

var a = 10;   //给变量a进行赋值

var b = “10”;

if(a!=b){

document.write(“a和b的值相等”);

}else

{

document.write(“a不等于b”);

}

五、三元运算符

所谓“三元运算符”是指有三个操作数。

语法格式:条件表达式 ? 为true时执行 : 为false时执行

//声明变量

Var isMarried = true;

if(isMarried)

{

Document.write(“已婚”);

}else

{

Document.write(“未婚”);

}

 

六、逻辑运算符:&&(逻辑与)||(逻辑或)!(逻辑非)

&&:逻辑与,并且关系。两个表达式如果都为true,则结果为true;反之,结果为false。

||:逻辑或,或者关系。两个表达式如果有一个为true,则结果为true;反之,结果为false。

!:逻辑非,取反。对某一个操作数取反操作,比如:!true=false,!false=true

比如:

X=50

X>=0 && X<=100       //且的关系

X>=100  ||  X<0       //或的关系

 

//实例:判断一个年份是不是闰年

//判断闰年的条件:

//(1)能被4整除且不能被100整除

//(2)能被400整除的

//声明一个变量,并赋值

var year = 2000;

//判断是不是闰年

if( (year%4 == 0 && year%100 != 0 ) || year%400==0)

{

       document.write(year+"是闰年");

}else

{

       document.write(year+"不是闰年");

}

运算符的优先级

. 、[ ]、new、( ) 级别最高
!、++、-- 级别次之上级
*、/、% 级别次之上级
+、- 次之上级
>、<、>=、<= 次之上级
==、!=、===、!== 次之上级
&&、||、?: 次之上级
=、+=、-=、*=、/=、%= 级别最低

特殊运算符 > 算术运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符

数据类型自动转换

大部分情况下,数据类型都是自动转换的。

  • 其它类型转成布尔型:有实际的值,都为true;否则,都为false
  • 其它类型转成字符型:都加上引号即可
  • 其它类型转成数值型:能转过去就转,转不过去是NaN

Boolean()将其它类型强制转成布尔型。举例:Boolean(name)

String():将其它类型强制转成字符型。举例:String(name)

Number():将其它类型强制转成数值型。举例:Number(name)

typeof()测试一个变量的类型

typeof()返回一个变量的字符串类型名称,取值:string、number、boolean、object、 function、undefined

举例:typeof(name)

 

流程控制语句

一、IF条件判断语句

(1)IF语句的结构:

if(条件判断、条件判断、此条件的结果只能是true或false){

       如果条件为true时,执行代码;

}else

{

       如果条件为false时,执行代码;

}

含义:如果“条件为true”,则执行“第一个大括号中的程序”;反之,执行“第二个大括号中的程序”。

If表示“如果”;

else表示“否则”、“或者”

 

2IF语句的结构

if(条件表达式1){

       执行代码1

}else if(条件表达式2)

{

       执行代码2

}else if(条件表达式3){

       执行代码3

}else{

       默认执行的代码;

       如果上边的条件都不满足,则执行;

}

IF多条件结构,每一次运算都只能执行一个条件和一个代码,执行完毕,退出到最后大括号}之后来运行其它代码

IF多条件结构,是或的关系,并不是且的关系。

用户输入对话框

格式:window.prompt(text[,defaultText])

说明:

      prompt()window对象的一个方法,要加小括号;

      [ ]表示这里的参数可有可无,不是必须的,如果没有指定[],一般为必须选项

      参数text:表示对话框的提示信息;

      参数defaultText:表示对话框中的默认文本信息。

      如果点击“确定”将返回一个字符串型的数据;如果点击“取消”将返回null

举例:var score = window.prompt(“请输入你的分数”,“这里是默认值”)

 

JS的注释

单行注释://注释内容

多行注释:/*注释内容*/

 

NaN是一个特殊的数值,它和任何值都不等,包括它自己。

欢迎分享本文,转载请保留出处!—重蔚自留地 站长邮箱:951076433@qq.com