js基础总结

自己在学习时小小总结了一下:(用md格式转换过)

JavaScript总结

1、简介

js是一种脚本语言(脚本是指能完成某些功能的程序段),可以嵌入HTML页面,被浏览器解释执行,使网页具有动态效果和交互功能。

特点:基于对象的,简单的,安全的(不能访问本地磁盘以及服务器),动态的(通过事件相应),跨平台的(仅依赖于浏览器,与操作平台无关)。

2、js语法基础

语法格式

<script language="javascript" runat="server">

<!--

//-->

</script>

其中runat可以省略表示在客户端执行,<!-- //-- >则是防止浏览器报错。

使用方法

1、在< body>标签中嵌入
2、在< head>标签中嵌入(在后面可以多次调用)
3、引用外部的js文件

//把js文件放在相应的路径

<script src="demo1.js"></script>

语句

; 为语句结束(不严格)。
{}为语句块。
//单行注释。 /.../多行注释。

数据类型

1、基本数据类型:
数值型:(整型或浮点,前面加0d为二进制0x为十六进制0为八进制,科学计数1.5e2为150)
字符型:用""或''表示
布尔型
2、复合数据类型:数组、对象
3、特殊数据类型:空值null(不同于0和空格)、undefined型

变量

变量名区分大小写,字母或下划线开头,后面可为字母下划线或数字。不能用已有的40多个关键字命名。
js中,所有变量都用 var 声明。也可以不声明直接赋值。
变量的作用域:全局变量为整个程序范围,局部变量只在函数体内。生存期同作用域。

常量

转义字符:

\b退格 \n回车换行(html中用<br/>换行) \tTab符

\f换页 \' \"单双引号 \v跳格 \r换行 \\反斜杠

运算符与表达式  同其他高级语言

控制结构

1、顺序
2、分支

//if型

if(){...}

else if(){...}else{...}

//switch型

switch(){

    case.. : ...;

    case.. : ...;

    default: ...;break;}

3、循环

//while型

while(){...}

do{...}while();

//for型

for(){...}

4、跳转

//break 跳出整个循环

//continue 跳出本次,继续重新执行循环

函数

定义

<script language="javascript">

 function fun_name(){}

</script>

函数调用:

1、直接调用
2、事件响应中调用

<html>

<head>

<script language="javascript">

    function fun1(){alert("hello!");}

</script>

</head>

<body>

<input type="button" value="问候" onclick="fun1()">

</body>

3、通过超链接调用

<a href="javascript:fun1()">点击查看</a>

<a href="#" onclick="fun1()">点击查看</a>

js输出数据:

 

使用 window.alert() 弹出警告框。

使用 document.write() 方法将内容写到 HTML 文档中。

使用 innerHTML 写入到 HTML 元素。

使用 console.log() 写入到浏览器的控制台。

 

 

 

3、js对象编程

对象的引用

//student是系统内置对象Object的一个实例(new用于创建对象的实例)

var student=new Object();

student.name="Tim";

 

//自定义对象(this指针用于指定当前对象)

function Student(no,name,age){

    this.no=no;

    this.name=name;

    this.age=age;

    this.getname=function(){return this.name;}

var stu1=nes Student("001","Peter","20");//也可用stu1["no"]="001"赋值;

 

//对象方法的引用

stu1.getname();

内置对象

javascript中有4类对象:内置对象、浏览器BOM对象、HTML DOM对象和自定义对象。

String对象:字符串,属性只有length,方法有很多。
Array对象:数组对象。
Date对象:实现对时间和日期的控制。
Math对象:不用先new,直接用Math.来使用其方法。

浏览器BOM对象

浏览器对象模型BOM是js操作浏览器的各个功能的接口。

Window窗口对象:控制窗口位置大小,对话框等。
Navigator浏览器对象:储存浏览器信息的对象。
Sreen屏幕对象:反映当前用户屏幕设置信息。
Location地址对象:当前窗口装载文档的URL。
History历史对象:存储最近访问网页的URL地址表。
Document文档对象:表示浏览器窗口中的页面文档。

HTMl DOM对象

文档对象模型DOM是用于XHTMl、XML文档的接口,使HTML文档以结构化的方式显示。

DOM树节点有12种,常用的有文档、元素、属性、文本和注释5种。

自定义对象

4、事件处理

 

常见事件:

鼠标事件:

onclick:鼠标点击时触发     onmousedown:按下鼠标时触发     onmouseup:按下后松开鼠标时触发

onmouseover:鼠标移动到此处   onmousemove:鼠标移动时触发

键盘事件: onkeydown:按下某键时触发

页面事件: onload:页面加载后触发    onunload:页面关闭时触发    onerror:出错时触发

 

事件对象:

 keyCode:按键的unicode值   button0124

 ctrlKey\shiftKey\altKey:判断是否同时按下组合键

 

<html>

<head>

    <meta charset="utf-8"/>

    <title>事件响应例子</title>

    <script>

        function test1(){window.alert("你好");}

        function test2(){document.write("hello again!");}

    </script>

</head>

<body>

    <input type="submit" onclick="test2()">

    <br/><br/><br/><br/><br/>

    <div style="background: black;" onmousemove="test1()">

        按钮

    </div>

</body>

 

posted @ 2020-09-11 19:39  X_peng  阅读(78)  评论(0编辑  收藏  举报