二 JavaScript基础语法

2.1编写JavaScript代码
1)由unicode字符集编写
2)语句:表达式,关键字,运算符组成;大小写敏感;使用分号结束.
2.2常量,标识符和关键字
1)常量: 直接在程序中出现的数据值(字面量),用完了就丢了.如:alert("hello");
2) 标识符: 由不以数字开头的字母,数字,下划线,$组成.常用于表示函数,变量等的名称.不能和保留关键字重复,如break,if等.
3) 关键字:只有系统才能用的标识符.
2.3 变量
1) 变量声明:使用关键字var声明变量,如var x,y;
注意事项: 以 var 关键字声明,声明的时候不确定类型,变量的类型以赋值为准.
例如: var x,y,z; x=10; y="maryy" z=true;
2) 变量初始化:使用等号赋值
注意事项: 没有初始化的变量则自动取值为 undefined,如:var count=0;
3) 变量命名同标识符的规则,大小写敏感.
2.4 数据类型
1) 基本类型: number 数字,string 字符串,boolean 布尔
2) 特殊类型: null 空, undefined 未定义.
3) 复杂类型: array 数组, object 对象.
2.5 string 数据类型
1) 表示文本: 由unicode字符,数字,标点符号组成的序列.
2) 首尾由单引号或者双引号括起来.
3) 特殊字符需要转义,用转义字符\, 如:\n,\\,\',\".
例如: var a="欢迎来到\'JavaScript世界\'";
注意事项:可用在正则表达式,只允许录入汉字[^\u4e00-\u9fa5$],每个汉字都有转义符.
2.6 number类型
1) 不区分整形数值和浮点型数值:所有数字都采用64位浮点格式存储,类似于double格式.
2) 整数: 16进制前面加上0x,8进制前面加上0.
3) 浮点数: 使用小数点记录数据,如:3.4,5.6;使用指数记录数据,如:4.3e23=4.3x10^23
2.7 boolean 数据类型
1) 仅有两个值:true和false;实际运算中true=1,false=0
2) 多用于结构控制语句.
2.8 数据类型的隐式转换
1) JavaScript 属于松散型的程序语言
(1) 变量在声明时,不需要指定数据类型.
(2) 变量由赋值操作指定数据类型.
2)不同类型数据在计算过程中会自动进行转换.
(1) 数字+字符串:数字转换为字符串.
(2) 数字+布尔值:true转换为1,false转换为0.
(3) 字符串+布尔值:布尔值转换为字符串true或者false
(4) 布尔值+布尔值:布尔值转换为1或者0.
例如: var s="a"; 
 var n=1;
 var b1=true;
 var b2=false;
 alert(s+n);//a1;
 alert(s+b1);//atrue;
 alert(n+b1);//2;
 alert(b1+b2);//1
2.9 数据类型转换函数
1) 转换方式:
(1) 隐式转换: 直接转,默认的规则.
(2) 显式转换: 利用转换的方法.
注意事项: 不建议用隐式转换.
2) 显示转换:
(1) toString:转换成字符串,所有的数据类型都可以转为String类型.
(2) parseInt: 强制转换为整数,如果不能转换,则返回NaN.
例如: parseInt("6.12")=6 (四舍五入)
(3) parseFloat: 强制转换成浮点数,如果不能转换,则返回NaN.
例如: pageFloat("6.12")=6.12
(4) typeof:查询数值当前类型,返回 string/number/boolean/object.
例如:typeof("test"+3)="string"
3) NaN: not a number,非常特殊,它不是数字,所以任何数跟它都不相等,甚至NaN本身也不等于NaN
4) isNaN(str): is not a number 判断文本是否为数值,false 为数值,true 为非数值.
5) 案例:
eg1:转换函数:得到录入数值的整数部分.
<input type="text" id="txtData">
    <input type="button" value="得到录入数据的整数部分" οnclick="getInt();">
    <script type="text/javascript">
    function getInt(){
    var str=document.getElementById("txtData").value;
    if(isNaN(str)){
    alert("请输入一个数字值");
    }else{
    var data=parseInt(str);
    alert("整数部分为:"+data)
    }
    }
    eg2:计算一个数的平方
    <input type="text" id="txtData">
    <input type="button" value="计算平方" οnclick="getSquare();">
    <script type="text/javascript">
    function getSquare(){
    var str=document.getElementById("txtData").value;
    if(isNaN(str)){
    alert("请输入一个数字值");
    }else{
    var data=parseFloat(str);
    var result=data*data;
    alert("该数的平方为:"+result)
    }
    }
    </script>
2.10 特殊类型
1) null: null在程序中代表无值或者无对象.可以通过给一个变量赋值null来清除变量的内容.
2) undefined: 声明了变量但从未赋值,或这个对象属性不存在.
2.11 算数运算符
1) + - * / %
(1) - : 可以表示减去,也可以表示负号
(2) + : 可以表示加法,也可以表示字符串连接.
2) ++  --
i++ <=> i=i+1        i-- <=> i=i-1;
2.12 关系运算
1) 用于判断数据之间的大小关系 : >  <  >=  <=  ==  != 
注意事项: "=="比较的是值(内容) .
2) 关系表达式的值是 boolean类型( true或者false)
3) 严格相等 : "===" 类型 数值都相等.
4) 非严格相等: !==.
2.13 逻辑运算
1) 逻辑非 !  逻辑与 &&    逻辑或||
2) 逻辑运算操作均为boolean表达式
b1     b2 b1&&b2 b1||b2 !b1
false false false false true
false true false true true
true false false true false
true true true true false
2.14 条件运算符
1) 条件运算符又称:"三目"或"三元"运算符
2) 语法:boolean 表达式?表达式1:表达式2
(1) 先计算boolean表达式的值,如果为true,则整个表达式的值为表达式1的值.
(2) 如果为false,则整个表达式的值为表达式2的值.
eg:猜数字:
    <input type="text" οnblur="guessNumber(this.value);">
    <script type="text/javascript">
    function guessNumber(str){//内置结果
    var result=10;
    if(isNaN(str)){
    alert("请输入一个数字值");
    }else{
    var data=parseFloat(str);
var info=data>=result?"大了":"小了";
alert(info);
    }
    }
    </script>
 2.15 流程控制语句
  程序默认情况下,顺序执行,改变或者控制执行顺序
  1) if语句: 
  (1) if(表达式){
  语句块1
  }else{
  语句块2
  }
  (2) if(表达式1){
  语句块1
  }else if(表达式2{
  语句块2
  }else{
  语句块3
  }
    2)switch-case语句
    switch(表达式){
    case 值 1:语句1;break;
    case 值 2:语句2;break;
    default:语句3;
    }
    3) for语句
    for(初始化;条件;增量){
    语句;
    }
    注意事项:初始化中的局部变量用var声明.
    4) while 语句
    while(条件){
    语句1;
    }
    注意事项:使用break或者continue终止循环.
    eg:阶乘计算
     <input type="button" value="求10的阶乘" οnclick="getFac();">
    <script type="text/javascript">
    function getFac(){
    var result=1;
    for(var i=1;i<10;i++){
    result*=i;
    }
    alert("10的阶乘为:"+result);
    }
    </script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值