目录
前言
JavaScript简称JS,是通行于各个浏览器的一种语言,JS运行在浏览器上
JS的引入放在body中,并且出现在所有元素的后面
如果要引入多个JS资源,按照执行的先后顺序依次引入
<script src="index.js"></script>
一、常见用法
1.1 JS的打印-console.log
console.log:在控制台打印一个日志以供程序员看
// 向控制台输出日志
console.log("这是一条日志");
1.2 prompt
在浏览器上弹出一个输入框
// 弹出一个输入框
prompt("请输入您的姓名:");
1.3 alert
在浏览器上弹出一个警示对话框,输出结果
// 弹出一个输出框
alert("hello");
1.4 创建变量 var
var name = 'zhangsan';
var age = 20;
JS的变量没有类型之说,数据是有类型的
var 是JS中的关键字,表示这是一个变量
=在JS中表示"赋值",相当于把数据放到内存的盒子中,
初始化的值如果是字符串,那就需要用单引号或者双引号引起来
初始化的值如果是数字,那么直接赋值即可
结合上面几个用法一起使用
var name = prompt("请输入姓名:");
var age = prompt("请输入年龄:");
var score = prompt("请输入分数");
alert("您的姓名是: " + name);
alert("您的年龄是: " + age);
alert("您的分数是: " + score);
1.5 基本数据类型
1.5.1 基本数据类型
• 数字类型:不区分整数和小数
• 字符串类型:单引号和双引号引起的
• 布尔类型:true真,false假,0是false,非0是真
• 特殊类型:undefined和null
• NaN: not a number,表示当前的结果不是一个数字
1.5.2 运算符
大部分和java类似
• == 比较相等(会进行隐式类型转换) !=
1 == "1" true
• === 比较相等(不会进行隐式类型转换) !==
1 === "1" false
1.5.3 if..while和java的区别
• java中的if(...) while(...) 括号类必须是布尔类型
if(1)是错的
但是在JS中
• if(1)是对的,因为0是false,1是true,undefined和null看做false
1.6 数组
JS的数组和Java的数组不同,JS中的数组内部结构实际类比成Java中顺序表ArrayList<Object>
使用方法和数组一样,可以直接使用下标,且可以存入各种不同类型的数值
1.6.1 数组的创建
可以使用new创建或者字面常量来创建数组
// Array 的 A 要大写
var arr = new Array();
var arr = [];
var arr2 = [1, 2, 'haha', false]; // 数组中保存的内容称为 "元素"
可以使用下标访问元素
如果下标超出范围读取元素,则结果为undefined
console.log(arr[-1]); // undefined
注意:不要给数组名直接赋值,会使数组中所有的元素丢失
var arr = ['小猪佩奇', '小猪乔治', '小羊苏西'];
arr = '小猫凯迪';
相当于本来arr是一个数组,重新赋值后变为了字符串
1.6.2 数组的增加和删除
新增数组元素
通过直接修改数组长度,相当于在末尾新增一些值为undefined的元素
var arr = [9, 5, 2, 7];
arr.length = 6; //此时数组arr[9,5,2,7,undefined,undefined]
通过下标新增
直接给超出数组外的下标赋值,则会直接在指定位置插入新元素
var arr = [];
arr[2] = 10;
此时除了下标2以外的下标值都为undefined
push(...) 尾插
pop(...) 尾删
unshift(...)头插
shift(...)头删
var a =[];
a.push(1); //a[1]
a.push(2,3); //a[1,2,3]
1.6.3 数组遍历
可以和java遍历一样用for循环
也可以
for(var i in arr) i是下标,arr[i]是元素
或者
for(var e of arr) e是元素,没有下标
1.7 函数(function)
1.7.1 函数的定义
和java不同,没有返回值类型,必须用function开头+函数名,形参列表也没有变量类型
任何js函数都一定有一个返回值,如果不写return,会默认返回值为undefined
// 创建函数/函数声明/函数定义
function 函数名(形参列表) {
函数体
return 返回值;
}
// 函数调用
函数名(实参列表) // 不考虑返回值
返回值 = 函数名(实参列表) // 考虑返回值
function hello() {
console.log("hello");
}
// 如果不调用函数, 则没有执行打印语句
hello(); //调用函数的方式
函数也是一种数据类型,其他数据类型能享受的权利,函数全部也可以
比如可以把函数赋值给变量