JavaScript 笔记

来源:互联网 发布:收支软件下载 编辑:程序博客网 时间:2024/06/05 04:03

;HTML

总结;HTML主要是对存储的格式进行设置;

1;语言规范;都用小写;

2;属性用双引号引起来;

3;标签要有开始有结束;

4;标签属性 ;type,name,value;

两个重要的标签

<a  href=”http://www.baidu.com”>百度</a>

ULR:超链接到…………..

5;列表;

表:,<table></table>;行<tr></tr]>单元格<td></td>

有序:<ol type=”1”><li></li></ol>;

无需;<ul > <li></li></ul>

6;表单<form></form>;向服务器提交内容

Submit  value=”注册”

Reset  重置;value=”重置”

7; 

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />指定网页编码

<meta http-equiv="Refresh" content="3" /> 三秒钟后刷新此网页。

<meta http-equiv="Refresh" content="3;url=http://www.rupeng.com" /> 三秒钟后重定向到新网页。发帖成功后提示“发帖成功,即将转向帖子查看页面”。

<meta http-equiv=“Cache-Control” content=“no-cache” /> 禁止浏览器缓存页面

8;层的标签;

<div></div>:里面放很多东西,但是是作为一个整体来操作的;<前后不换行>

<span></span>:<不可以设置宽度和高度>里面也尅放很多东西,主要针对的文本的操作;<前后换行>

通过display:innerline可以把div变为span

通过:display:block;可以吧span变为div

9;css样式;

常用的有.border ,font ,color,backgroundColor,display,margin,padding;

10;样式选择器;

首先定义好的样式通过id,标签名.或者className来调用;

二;JavasCcript

1;基础语法;弱类型语言

大小写敏感,

定义变量用var,弱类型语言

每条语句结束的时候加分号;

2;完全等于,===首先判定类型是否一样;通过Typeof可以获得父类型

3:类型和转换;

ParseInt();

Parsefloat();

IsNaN判断不了是不是一个NaN类型的

4;函数;function();

自定义的函数的名字不要与系统的函数的名字的相同;

函数可以取名字,也可以没有名字(匿名函数);还可以把函数赋值给一个变量;

如果有名字的函数如果重名的 时候.会以最后一个为准;

5;字符串;

Length;字符串中字符的个数;CharAt();通过下标访问字符;substring();截取,两个参数都是西欧下标;

6;数组;

没有输入类型,可以放任何数据,任何长度,长度也是自由的;如果元素没有赋值返返回的是undefined;

数组的长度还可以在使用的时候,自动定义;

通过for循环遍历取值;

For  in循环一般是遍历的键值对数组,是通过下标访问的;

键值对集合;var arr={“beiming”:“北冥”, “beiming”:“北冥”}

7;定时:

SetInterval(函数,1000);1000是毫秒;每隔一秒发生一次;

关闭:clearinterval(‘interval’);

Settimeout(函数,1000);在第一秒的时候发生一次.只发生一次;

Cleartimeout;

8;jsdom

获取页面的元素;document.getElmentBy(‘id’)返回的 \是一个值或者;documentgetElementByTagName(‘input’);访问到的是每一个input返回的是一个集合;

9;动态设置事件

<input  type=”button”  name=”name”  value=”点我” 

Onclick=”document.onclick=f”/>在这里方法不能加括号,及括号就成了调用函数;

10;windwo属性

属性一

Window.alert();弹出对话框;

Window.confim(‘确定要删除吗’).确定,取消对话框,返回true或者false;

Window.navigate(url);将网页重新导航ulr

Window.location.href=’url’;导航到ulr

属性二;

ClientX,clientY事件发生的时候,鼠标在屏幕上位置;

属性三;

SrcElement;或是事件源对象;

Button;按下鼠标左,右,键,和滑轮的值;

Screen;获得屏幕信息;

属性四;

ClipboardData对象.对粘贴板的操作;

ClipboardData.setData();设置剪贴板;

ClipboardData.getData();获取剪贴板内容

ClipboardData.clearData();清空剪贴板内容

Window.history.back();后退;window.history.go(-1);

Window.history.forward();前进;;window.history.go(1);

属性5;

Document;

Window.write();向文档写内容.不换行

Window.writeln();向文档写内容.换行

11;动态创建元素;

Document.createElement();创建元素

Document.removeElment();删除元素;

清空标签下的所有元素

标签名.innerHTML=’’;

追加一个元素;

AppendChild();

InnertText;读取文本,不过滤标签;

InnerHTML;读取内容,过滤标签;

11;创建表格;

表名.insertRow(-1);//-1表示在表的最后追加一行;

行名.insertCell(-1);//-1表示在当前的行的最后追加一个单元格;

12;样式控制

两种方法;

1;第一种方法是直接点出属性;然后赋值;

首先声明一个标签对象;如div对象;//获取div的对象赋值给一个变量

通过对象.style.属性,进行赋值;

2;第二种方法;

首先声明一个或者几个样式;

声明一个标签的对象,

通过对象.className,然后把样式的名字赋值(如果有点则去掉);

当有多个的时候

对象点,className+=’ 样式名’;引号里面的样式名前面一定有一个空格;

12;

在页面加载的时候是获取不到样式中的标签的属性,

所以这个时候用offsetwidth和offsetheight来获取;就可以获取到了;

display:none;层的状态是隐藏的;

当把display写在样式中的 时候,如果直接去访问是访问不到的;

层的默认的是display=’’;也就是显示,当你不给他赋值的时候,默认是显示;如果样式中有display的 设置,就会去掉用里面的设置;但是如果你给了一个block就会是默认的显示;

block告诉div以一个块集的形式显示;

document.click();在事件运行后页面的任何地方单击能触发事件,body.click的事件运行后在是在页面的一部分范围内有效;不用的浏览器也有差异;

absolute;层的绝对定位;

通过innertHTML可以创建动态的按钮;通过ceateElement();创建的元素innnertext是不能识别的;

InnerHTML=<input…..>;

13;正则表达式;

语法;

Var reg=/^\d{6}$/;

通过reg.test();来判定是否符合正则;

字符串的提取

Ecec();用来验证某个字符串是否匹配正则表达式;

Js的正则表达式写在//(/表达式/)里面;

1;直接调用exec相当于c#中的match()只提取第一个符合条件的

2;如果正则表达式有提取组的信息,则返回结果是一个数组,第一个是(完全)匹配的字符串,后面的所有的元素,表示提取组的 信息;

3;在整则表达式后面加一个g表示全局模式

如果想要提取所有的匹配;

1在表达式后加g

2;反复调用;

g以后就是全局模式,全部模下使用exec来反复调用,下标是从前一个提取的下标之后开始提取,所以可以提取到所有的;

 非全局模式使用反复调用exec的来访问的时候每一的下标都是从0开始的所以每一次只能匹配到第一个;

3;正则表达式提取组以后,返回一个数组,如果匹配不到,则返回null

4;match();方法提取匹配当前正则表达式的元素;

match方法提取的时候如果不加g(全局模式),则只提取第一个匹配的;如果加g则会匹配到所有的,返回的是一个值数组;

当提取带分组的不带g的时候,则返回的是一个数组,并且数组只有第一个匹配到的结果;并且还有这个结果的分组信息;

5;使用match匹配的时候,全局模式下,即使有分组信息也不会显示出来,建议用ecec()循环来做;

6;js中的replace(参数1,参数2)方法,两个参数,参数一是正则表达式,参数2是替换内容,(表达式一也可以是自符串.但是这时候只会替换第一个匹配到的);

三;概括

1;声明的时候赋初值;

2;尽量避免使用全局变量,有可能会覆盖window的属性;如果要声明也要放在一个对象里;

3;通过对象与对象的属性可以模拟命名空间的概念;

4;循环时候数组的长度赋值给一个变量,然后在循环中使用或者使用倒着的循环;

5;尽量避免使用类似的下面的写法;

var code=’alert(100)’;

Eval(code);

6;数组自己有的方法,自己不要试着去写同样功能一个方法;

Arr.sort();

Arr.reverse();

Arr.join();

7;代码能少就少;

9;声明键值对数组的时候尽量用

Var s={‘呵呵’,1,2,3};

 

 

 

原创粉丝点击