JavaScript是一门跨平台、面向对象的脚本语言,用来控制网页行为,使网页可交互
js引入方式
内部脚本:将JS代码定义在HTML页面中
JavaScript代码必须位于<script></script>标签之间
在HTML文档中,可以在任意地方,放置任意数量的<script>
一般会把脚本置于<body>元素的底部,可改善显示速度
外部脚本:将JS代码定义在外部JS文件中,然后引入到HTML页面中
外部JS文件中,只包含JS代码,不包含<script>标签
<script>标签不能自闭和
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>JS-引入方式</title>
<!-- 内部脚本 -->
<!--
<script>
alert('Hello JS')
</script>
-->
<!-- 外部脚本 -->
<script src="js/demo.js"></script>
</head>
<body>
</body>
</html>
js基础语法
书写语法
区分大小写:与Java一样,变量名、函数名以及其他一切东西都是区分大小写的、
每行结尾的分号可有可无
注释: 单行注释://注释内容
多行注释:/* 注释内容 */
大括号表示代码块
输出语句
使用window.alert() 写入警告框
使用document.write() 写入HTML输出
使用console.log() 写入浏览器控制台
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>JS-基本语法</title>
</head>
<body>
</body>
<script>
//alert("JS");
//方式一:弹出警告框
window.alert("hello js");
//方式二:写入HTML页面中
document.write("hello js");
//方式三:控制台输出
console.log("hello js");
</script>
</html>
变量
JavaScript 中用var关键字来声明变量
JavaScript是一门弱类型语言,变量可以存放不同类型的值
变量名须遵循如下规则: 组成字符可以是任何字母、数字、下划线或$
数字不能开头
建议使用驼峰命名
变量作用域比较大,全局变量,可以重复定义
数据类型
JavaScript分为原始类型和引用类型
原始类型:number:数字(整数、小数、NaN)
string:字符串,单双引皆可
boolean:布尔,true、false
null:对象为空
undefined:当声明的变量未初始化时,变量默认值为undefined
使用typeof运算符可以获取数据类型
运算符
算术运算符:+,-,*,/,%,++,--
赋值运算符:=,+=,-=,*=,/=,%=
比较运算符:>,<,>=,<=,!=,==,===(===不会进行类型转换,类型不同直接flase)
逻辑运算符:&&,||,!
三元运算符:条件表达式?true_value: false_value
js函数
形参不需要类型,返回值也不需要,可以在函数内部直接return就行
js对象
Array
用于定义数组
方式一:var 变量名 = new Array(元素列表);
var arr = new Array(1, 2, 3, 4);
方式二:var 变量名 = [元素列表];
var arr = [1, 2, 3, 4];
访问:arr[索引] = 值
arr[10]= "hello";
String
方式一: var 变量名 = new String("...");
var str = new String("Hello String");
方式二: var 变量名 = "...";
var str = "Hello String";
JSON
JavaScript Object Notation,JavaScript对象标记法,语法简单,层次结构鲜明,多用于数据载体,在网络中进行数据传输
var userStr = '{ "name":"Jerry", "age":18, "addr":["北京", "上海", "西安"]}';
json字符串转为JS对象
var jsObject = JSON.parse(userStr);
JS对象转为json字符串
var jsonStr = JSON.stringify(jsObject);
BOM
Browser Object Model 浏览器对象模型,允许JavaScript与浏览器对话,JavaScript将浏览器的各个组成部分封装为对象
Window:浏览器窗口对象
Navigator:浏览器对象
Screen:屏幕对象
History:历史记录对象
Location:地址栏对象
DOM
Document Object Model 文档对象模型,将标记语言的各个组成部分封装成对应的对象
Document:整个文档对象
Element:元素对象
Attribute:属性对象
Text:文本对象
Comment:注释对象