编写 JavaScript 代码
. 由Unicode字符集编写
. 注释
-- 单行://
-- 多行:/* */
. 语句
-- 表达式、关键字、运算符组成
-- 大小写敏感
-- 使用分号或者换行结束
常量、标识符与关键字
有
. 常量
-- 直接在程序中出现的数据值
. 标识符
-- 常表示用于函数、变量等的名称
-- 例如: _abc,$abc,abc,abc123 是标识符,而1abc不是
-- 保留关键字,如 break、 if等。
变量
. 变量声明
-- 使用关键字 var 声明变量,如var x,y;
. 变量初始化
-- 使用 = 赋值
-- 没有初始化的变量则自动取值为undefined
-- 如: var count = 0;
. 变量命名同标识符的规则,大小写敏感
数据类型
JavaScript数据类型
基本类型 特殊类型 复杂类型
Number:数字 Null: 空 Array:数组
String: 字符串 Undefined:未定义 Object:对象
string 数据类型
. 表示文本
-- 由 Unicode字符、数字、标点符号组成的序列
. 首尾由单引号或双引号括起
. 特殊字符需要转义符
-- 转义符\,如 : \n,\\,\',\"
var aa="\u4f60\u597d\n欢迎来到\"javaScript世界\"";
alert(aa);
number 数据类型
. 不区分整型数值和浮点型数值
-- 所有数字都采用 64 位浮点格式存储,类似于double 格式。
. 整数
-- 10进制的整数由数字的序列组成
-- 16进制数据前面加上0x,八进制前面加0
. 浮点数
-- 使用小数点记录数据,如 3.4 , 5.6
-- 使用指数记录数据,如 4.3e23 = 4.3*1023
BOOLEAN 数据类型
. 仅有两个值: true 和 false
-- 也代表1 和 0
-- 实际运算中 true=1,false=0
. 多用于结构控制语句
数据类型的隐式转换
. JavaScript 属于松散类型的程序语言
-- 变量在声明时不需要指定数据类型
-- 变量由赋值操作确定数据类型
. 不同类型数据在计算过程中会自动进行转换
数字 + 字符串 : 数字转换为字符串
数字 + 布尔值 : true 转换为1, false 转换为 0
字符串 + 布尔值: 布尔值转换为字符串true或false
布尔值 + 布尔值: 布尔值转换为数值1或0
数据类型的隐式转换
var s1 = "a";
var n1 = 1;
var b1 = true;
alert(s1 + n1); //a1
alert(s1 + b1) //ature
alert(n1 + b1);//2
var b2 =flase;
alert(b1+b2); // 1
数据类型转换函数
toString
-- 转换成字符串
-- 所有数据类型均可转换为 string 类型
parseInt
-- 强制转换成整数
-- 如果不能转换,则返回 NaN
-- 例如 parseInt("6.12")=6
parseFloat
-- 强制转换成浮点数
-- 如果不能转换,则返回 NaN
-- 例如: parseFloat("6.12")=6.12
typeof
-- 查询数值当前类型,返回 string/number/boolean /object
-- 例如:
typeof("test"+3)="string"
项目案例:
获取整数部分
计算平方
null 与 undefined
. null
-- null 在程序中代表 "无值" 或者 "无对象"
-- 可以通过给一个变量赋值 null 来清除变量的内容
. undefined
-- 声明了变量但从未赋值或者对象属性不存在
算术运算:
. 加(+)、减(-)、乘(*)、除(/)、余数(%)
- 可以表示减号,也可以表示负号,如 : x = -y
+ 可以表示加法,也可以用于字符串的连接
. 递增(++)、递增(--)
i++ 相当于 i+i+1,i--相当于 i=i-1
关系运算:
. 关系运算用于判断数据之间的大小关系
">"(大于),"<"(小于),">="(大于等于),"<="(小于等于),
"=="(等于),"!="(不等于)
. 关系表达式的值为boolean类型("true"或"false")
关系运算 -- 严格相等
. 严格相等 : ===
-- 类型相同
-- 数值相同
. 非严格相等:!==
var a ="10";
var b =10;
if(a==b){
alert("equal");
}
if(a===b){
alert("same");
}
逻辑运算
. 逻辑非(!)、逻辑与(&&)、逻辑或(||)
. 逻辑运算的操作数均为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
条件运算符
. 条件运算符又称 "三目" / "三元" 运算符,
其结构为:
boolean表达式?表达式1:表达式2
-- 先计算 boolean 表达式的值,如果为true,则整个表达式的值表达式1的值
-- 如果为false,则整个表达式的值为表达式2的值
项目案例:
数值比较
猜数字
控制语句
. 任何复杂的程序逻辑都可以通过"顺序","分支","循环" 三种基本的程序结构实现
-- 语句为顺序执行
-- 可以使用控制语句改变程序的执行顺序
if 语句
if(关系表达式){
// 语句块 1
}
else{
// 语句块 2
}
if(表达式1){
语句1;
}else if(表达式2){
语句2;
}else if(表达式3){
语句3;
}else{
语句4;
}
switch-case 语句
switch(表达式){
case 值1:
语句1;
break;
case 值2:
语句2;
break;
default:
语句4;
}
for 语句
for(初始化;条件;增量){
语句1;
...
}
例如:
var sum = 0;
for(var i=0;i<10;i++){
sum + =1;
}
while 语句
. while(条件)
{
语句1;
...
}
. 使用break或者continue 中止循环
项目案例:
阶乘计算
计算 10 的阶乘
百钱买百鸡问题:
计算"百钱买百鸡" 的问题。
百钱买百鸡;公鸡5文钱一只,母鸡3文钱一只,小鸡1文钱3只,如何用百文钱买百只鸡?