HTML 中的脚本必须位于 script 与 /script 标签之间。而脚本可被放置在 HTML 页面的 body 和 head 部分中。
JavaScript 语句会在页面加载时执行。通常,我们需要在某个事件发生时执行代码,比如当用户点击按钮时。
如果我们把 JavaScript 代码放入函数中,就可以在事件发生时调用该函数。
如要使用外部的JavaScript代码,可在 script 标签的"src"属性中设置一个.js文件。
一些零碎知识:
- ===表示绝对相等,即数据类型与值都相等。
- 全局方法String()和Number方法toString()都能将数字转化成字符串。类似的全局方法还有Number()。
##JavaScript的输出
JavaScript的输出方式有多种,如:
window.alert() #弹出警告框
document.write() #将内容写入到HTML文档中
innerHTML #写入到HTML元素
console.log() #写入到浏览器的控制台
HTML元素可以用“id”属性来标记,然后就可以用document.getElementByld(id)方法来访问这个HTML元素,再使用innerHTML来获取或插入元素内容:
<!DOCTYPE html>
<html>
<body>
<h1>这是一个 Web 页面</h1>
<p id="demo">这是一个段落</p>
<script>
document.getElementById("demo").innerHTML = "段落已修改。";
</script>
</body>
</html>
##JavaScript基本语法
一些基本结构:
数组(Array):[1,2,3,4,8,5.4,9]
对象(Object):{firstName:“John”, lastName:“Doe”, age:50, eyeColor:“blue”}
函数(Function):function Myfunction(a,b){return a*b;}
其他知识点:
- 变量用var来定义
- 操作符
- //用于注释
- 字符串类型String中的内容用’'或者""
- 大小写敏感
- const表示常量
- 当声明新变量时,可以使用关键字new来声明其类型:var x=new Number;
##JavaScript的数据类型
值类型(基本类型):字符串String、数字Number、布尔Boolean、对空Null、未定义Undefined、Symbol(一种新引入的原始数据类型,表示独一无二的值)。
引用数据类型:对象Object、数组Array、函数Function。
注意:JavaScript拥有动态类型,这意味着相同的变量可用作不同的类型:
var x;
var x=5;
var x="you";
1.数组
数组的创建有多种方式,如:
var a = new Array();
a[0] = "xun";
a[1] = "yun";
a[2] = "zi";//第一种方式
var b = new Array("xun","yun","zi");
//第二种方式
var c = ["xun","yun","zi"];
//第三种方式
2.对象
由花括号分隔,在括号内部,对象的属性以名称和值对的形式(name:value)来定义,如:
var person={firstname:"John",lastname:"Nash",age:23};
对象的寻址方式有两种:
name = person.lastname;
name = person["lastname"];
3.事件
HTML 事件是发生在 HTML 元素上的事情。
当在 HTML 页面中使用 JavaScript 时, JavaScript 可以触发这些事件。
如下列举一些常见的HTML事件:
- onchange:HTML元素改变
- onclick:用户点击HTML元素
- onmouseover:鼠标指针移动到指定的元素上发生
- onmouseout:用户从一个HTML元素上移开鼠标时发生
- onkeydown:用户按下键盘按键
- onload:浏览器已完成页面的加载
4.字符串
字符串中各个字符可以索引,从0开始。
可以在字符串中使用引号,但字符串中的引号不要与字符串的引号相同,要是需要相同的话需要添加转义字符:
var x = 'It\'s alright!'
由此引出一些特殊字符:
- \反斜杠
- \n换行
- \r回车
- \t制表
- \b退格
- \f换页
字符串的创建有两种,一是原始值字符串,二是将字符串定义为一个对象,两种创建方法分别为:
var name1 = "Cloud";
var name2 = new String("Cloud");
(name1 === name2) //结果为false,因为x是字符串,y是对象。
原始值字符串没有属性和方法,但原始值可以使用JavaScript的属性和方法,因为JS在执行方法和属性时可以把原始值当做对象。
字符串属性:
- constructor:返回创建字符串属性的函数
- length:返回字符串的长度
- prototype:允许你向对象添加属性和方法
字符串方法略。
##一些操作符
typeof:
typeof "JeepCar" //返回string
typeof 3.14 //返回number
typeof false //返回boolean
typeof [1,2,3,4] //返回object
typeof {name:'Jack',age:26} //返回object
null:
可用于清空对象。
undefined:
没有设置值的变量。其中,null和undefined的值相等,但类型不相等。
##类型转换
JavaScript中有6中不同的数据类型:
- String
- number
- boolean
- object
- function
- symbol
3种对象类型:
- Object
- Date
- Array
2个不包含任何值的数据类型:
- null //数据类型是object
- undefined