仅仅十天发明出了的
是一门脚本语言:不需要编译,直接运行
是一门解释性的语言:遇到一行代码就解释一行代码
一门动态类型的语言
基于对象的语言、一门弱类型的语言。
JS是区分大小写的,以分号结束
以下三种写法都是可以的
<script></script>H5写法
<script type="javascript"></script>标准写法
<script type="javascript" language="JavaScript"></script>为了兼容浏览器
一般放到head和body末
复制代码
<head>
<meta charset="UTF-8">
<title>Title</title>
<script></script>
</head>
<body>
<script>
alert("我是弹窗!")
</script>
</body>
复制代码
JS中的字符串既可以使用双引号也可以使用单引号
JS分为三部分:
1、ECMAScript标准:js的基本的语法
2、DOM 文档的对象模型
3、BOM 浏览器对象模型
JS中所有的数字都属于number类型
JS中的数字:
最大值 Number.MAX_VALUE
1.7976931348623157e+308
最小值 Number.MIN_VALUE
5e-324
JS是存在bug的
复制代码
<script>
var num=0.1
var num1=0.2
sum=num+num1
alert(sum==0.3)
</script>
结果是false
复制代码
Infinity无穷大
-Infinity无穷小
js中的原始数据类型:number、string、Boolean、undefined、null、object
NaN----不是一个数字,不是一个数字和一个数字计算------>结果就是NaN
isNaN判断一个数字是不是一个数字,如果是就返回TRUE,如果不是返回·false
number数据类型:无论是整数还是小数都是number数据类型的
string数据类型:字符串,获取字符串的长度:变量名.length
Boolean数据类型:两个值TRUE或者false
null 只有一个null
undefined只有一个undefined,一个变量声明,没有赋值
类型转换:
parseInt()装整数
parseFloat转小数
Number()转数字
转字符串:
.toString
String()
运算符
算术运算符:+ - * / %
符合运算符:+= -= *= /= %=
赋值运算符:= 优先级别最低
关系运算符:&&// !
字符串需用双引号,字符则用单引号。字符串可以看成一个数组,由多个字符组成,可通过for循环遍历。
js中常用方法以及document.readyState 判断页面是否加载完成 complete和interactive
传回XML 文件资料的目前状况。 基本语法 intState = xmlDocument.readyState 说 明 这个属性是只读的,传回值有以下的可能: 0-UNINITIALIZED:XML 对象被产生,但没有任何文件被加载。 1-LOADING:加载程序进行中,但文件尚未开始解析。 2-LOADED:部分的文件已经加载且进行解析,但对象模型尚未生效。 3-INTERACTIVE:仅对已加载的部分文件有效,在此情况下,对象模型是有效但只读的。 4-COMPLETED:文件已完全加载,代表加载成功。 范 例 alert("The readyState property is " + xmlDoc.readyState)
1.窗口关闭时执行的函数 window.onbeforeunload = function(){}
2.页面加载情况判断document.readyState值可以是complete和interactive
function document.onreadystatechange() { if(document.readyState=="complete") alert(document.readyState)}
或者:
document.onreadystatechange = init
function init() {
if(document.readyState=="complete") {.........}
}
3.屏蔽右键功能和严禁选中操作
//document.oncontextmenu=new Function("event.returnValue=false")
//document.onselectstart=new Function("event.returnValue=false")
4.鼠标位置判断
window.event.y和window.event.x //x,y是鼠标相对于当前浏览器的位置
window.event.screenY和window.event.screenX //screenX,screenY是相对于用户显示器的位置
window.event.clientY和window.event.clientX //clientX, clientY是鼠标当前相对于网页的位置,
window.event.offsetY和window.event.offsetX //offsetX, offsetY是鼠标当前相对于网页中的某一区域的位置,当鼠标位于页面中这一区域的左上角时offsetX=0, offsetY=0;
5.窗口大小判断
document.documentElement.scrollWidth和document.documentElement.scrollHeight //获取窗口的宽和高
6.返回值
window.event.returnValue="真的要关闭吗" //弹出一个确认信息,确认事件是否要执行
return confirm("真的要关闭吗") //两个是一样的功能
7.获取随机数 parseInt(Math.random()*100) //获取1至100之间的随机数
分号加与不加完全取决于个人习惯,但为了代码稳定(解析出错)还是建议使用分号断句。JavaScript自动加分号规则:
1.当有换行符(包括含有换行符的多行注释),并且下一个token没法跟前面的语法匹配时,会自动补分号。
2.当有}时,如果缺少分号,会补分号。
3.当程序源代码结束时,如果缺少分号,会补分号。
结论:
1.在return、break、continue、后自增、后自减五种语句中,换行符可以完全替代分号的作用。
2.var if do while for continue break return with switch throw try debugger几种关键字开头的语句,以及空语句,上一行加不加分号影响不大。
3.凡表达式语句和函数表达式语句,后面不加分号非常危险,情况极其复杂。
4.凡(和[开头的语句,前面不加分号极度危险。