输入输出
<script>
// 浏览器弹出输入框,用户可以输入
prompt('请输入年龄');
//浏览器弹出警示框
alert('我是机器人');
//浏览器控制台打印输出信息
console.log('测试');
</script>
变量
// 声明一个名称为age的变量
var age;
// 赋值
age = 18;
// 输出结果
console.log(age);
// 初始化变量
var myname = '机器人';
同事声明多个变量只需要写一个var,变量名之间用逗号隔开
变量不声明直接赋值使用是可以的,不提倡。
js的变量是赋值的时候才确定类型,而且拥有动态类型,可以给它赋值其他类型 的值
- 字符串,数字(前面加0是八进制,前面加0x是十六进制),布尔值,空,
变量的命名规范
- 字母数字下划线组成$
- 区分大小写
- 不能数字开头
- 不能是关键字
- 变量名要有意义
- 遵守驼峰命名法
isNaN()判断一个变量是不是数字,返回false或者ture
字符转string
转义符:\n是换行,\是\,"是",\t是tab缩进,\b是空格blank
获取字符串长度length
字符转拼接 +
转换成字符串
toString()
var num = 1;num.toString;
String()强制转换,
var num = 1;
String(num);
+拼接字符串,和字符串拼接结果都是字符串
var num= 1;
num + "另一个字符串";
转换为数字型
单行注释,多行注释,修改快捷键
三元表达式
switch
switch 和if else if 的区别
- 一般可以互换使用
- Switch case 通常处理case为确定值的情况,if else 灵活,用于范围判断
- switch判断后直接跳到执行语句,效率高,
- 分支少时用if else
- 分支多时用Switch
对象
字面量创建对象
var obj = {
uname: '可可',
type: '阿拉斯加犬',
age: 5,
color: 'red',
bark: function() {
console.log('汪汪汪');
}
}
newObject 创建对象
var obj2 = new Object();
obj2.name = '鸣人';
obj2.sex = '男';
obj2.age = '19';
obj2.skill = function() {
console.log('影分身书');
}
构造函数创建对象
数据类型转换
<script>
var age = prompt('请输入你的年龄');
// parseInt(变量) 可以把字符型的转换成数字型的,得到的是整数。
console.log(parseInt(age));
console.log(parseInt('3.14')); //3
console.log(parseInt('3.94')); //3
console.log(parseInt('120px')); //120
console.log(parseInt('rem120px')); //NaN
// parseFloat(变量)可以把字符型的转换为数字型的,得到的事小数,浮点型
console.log(parseFloat('3.14')); //3.14
console.log(parseFloat('120px')); //120
console.log(parseFloat('rem120px')); //NaN
</script>
Nunber()强制转换函数,将string类型转换为数值型,
js隐式转换(- * /)利用算术运算隐式转换为数值型,‘12’-0
转换成布尔型
Boolean()函数,Boolean('ture');
代表空,否定的值会转换成false,如、NaN,NULL,undefined
其余值会转换为ture
解释型语言和编译型语言
编译型语言有编译器,会生成中间文件,运行时编译再执行
解释型语言有引擎解释成机器语言
算数运算符
//运算
console.log(1 * 1);//1
// 取余
console.log(4 % 2);//0
console.log(5 % 2);//1
// 浮点数,算数运算里面会有问题
console.log(0.1 + 0.2);//0.300004
console.log(0.07 * 100);//7.00000001
//不能直接拿浮点数进行比较是否相等
var num = 0.1 + 0.2;
console.log(num == 0.3);//false
自增运算符
<script>
//变量自加一
var num = 1;
num = num + 1;
//前置递增运算符 ++写在前面
var age = 10;
++age; //类似于age = age + 1
console.log(age);
//先加一,后返回值
var p = 10;
console.log(++p + 10);
//后置自增运算符,先返回原值,后自加一
var i = 10;
console.log(i++ + 10);
console.log(i);
</script>
单独使用时结果相同
与其他代码联动时结果不同
比较运算符
<小于号
大于号
=大于等于
<=小于等于
==判等号
!=不等号
===全等
!==
逻辑运算符
&&逻辑与and
||逻辑或or
!逻辑非not
短路运算逻辑中断
当有多个表达式时,左边的表达式可以确定结果时,不在运算右边的表达式
表达式1&&表达式2
如果表达式1的值为真,则返回表达式2
如果表达式2的值为真,则返回表达式2
表达式1||表达式2
如果表达式1的值为真,返回表达式1
如果表达式1的值为假,返回表达式2
赋值运算符
=
+=,-=,加减一个数后再赋值,var age = 4;age +=2;相当于age = age + 5;
*=,/=,%=,乘除取余后再赋值
运算符优先级
1小括号()
2一元运算符++ -- !
3算术运算符* / + -
4关系运算符><
5相等运算符== !=
6逻辑运算符先&& 后||
7赋值运算符=
8逗号运算符,