JavaScript在页面中的引用
1.
<script type="text/javascript" language="JavaScript">
//在控制台输出“hello world!”
console.log('hello world!');
</script>
2.
<script src="hello.js"></script>
JavaScript语言特点
1.脚本语言
2.基于对象
3.简单
4.跨平台
5.嵌入式
Java Script主要组成部分:
- ECMAScript(核心)
- DOM(文档对象模型)
- BOM(浏览器对象模型)
在页面中的存放位置
1.放head 2.放body 3.放html标签外面 4.可以有多个
Javascript基本语法
//声明变量
let num = 10;
//输出num
console.log(num);
//声明变量
var num = 10;
//输出num
console.log(num);
变量的命名规范:
- 变量必须使用字母、下划线( _ )或者美元符( $ )开始。
- 然后可以使用任意多个英文字母、数字、下划线或者美元符组成。
- 变量名区分大小写,如:A与a是两个不同变量。
- 不能使用JavaScript关键词与JavaScript保留字。
- 变量名最长为255个字符(实际上可以超过)。
js中的数据类型
- undefined-未定义类型:未被赋值的变量,值为undefined
- boolean-布尔类型:值为true/false
- number-数字类型:任何数字(NaN也是number类型,表示“非数”)
- string-字符串类型:值用引号(单引号或者双引号)括起来
- object-对象类型:null、数组、Date等
- function-函数类型:function函数
typeof获取变量数据类型
//使用typeof获取变量数据类型
let num;
console.log(typeof num) //返回undefined
num = 10;
console.log(typeof num) //返回number
num = 'abc';
console.log(typeof num) //返回string
num = true;
console.log(typeof num) //返回boolean
function getDate(){}
console.log(typeof getDate) //返回function
num = [];
console.log(typeof num) //返回object
num = new Date();
console.log(typeof num) //返回object
num = null;
console.log(typeof num) //返回object
特殊值NaN、Infinity
1.NaN,即非数值(Not a Number)是一个特殊的值。返回值为false时,说明这个值可以转为数值
判断一般用isNaN()函数
console.log(isNaN(5)); //false
console.log(isNaN('5')); //false
console.log(isNaN('a')); //true
2.nfinity 即无穷,是一个特殊的值
console.log(10/0); //Infinity
js运算符
==与===的区别
== 相等运算符 运行时,“==”操作符会自动将两端的操作数转换为同一种数据类型后再作比较。
=== 严格相等(等同运算符 ) “===”是严格意义上的相等,两个值和它们的类型完全一致时才返回true。
console.log(1=='1'); //true
console.log(1==='1'); //false
js数据类型转换
1.减乘除可以自动进行隐式转换
2.强制类型转换(用于加法)
parseInt() :将字符串转换成整数。 parseFloat() :将字符串转换成浮点数。
let num1 = '10';
let num2 = '5';
console.log(num1-num2) //5
console.log(num1*num2) //50
console.log(num1/num2) //2
let str1 = '10';
let str2 = '10.5'
console.log(parseInt('10')+parseFloat('10.5')); //20.5
流程控制语句
if语句
//if-else语句:
let score = 60;
if(score>=60){
console.log('及格了');
}else{
console.log('不及格');
}
//多重if-else语句:
let score = 80;
if(score>=90){
console.log('优秀');
}else if(score>=80&&score<90){
console.log('良好');
}else if(score>=60&&score<80){
console.log('中等');
}else{
console.log('不及格');
}
switch语句
let level = 1;
switch (level) {
case 1:
console.log('第一名')
break;
case 2:
console.log('第二名')
break;
case 3:
console.log('第三名')
break;
default:
console.log('重考')
break;
}
while语句
let i = 0;
while(i<5){
console.log(i);
i++;
}
do while语句
let num = 123456;
do{
console.log(num%10);
num = Math.trunc(num/10); //Math.trunc()方法去除数字的小数部分,保留整数部分。
}while(num!=0);
for语句
for(let i=0;i<5;i++){
console.log(i);
}