JavaScript:

JavaScript:
   是脚本语言,由三部分组成:ECMAscript、dom文档对象模型(函数库)、Bom游览器对象模型
    
    语法:
1 大小写敏感
2 弱类型语言:声明变量用var
3 js注释:和C#相同,单行注释:"//"多行注释: /* 注释内容*/
4 写完一个语句加分号;
5 js没有块级作用域
               6变量的命名规则:以字母、下划线或$开头
  消息框:
1 alert   2confirm  3prompt
   异常处理:
try{        } cath(error){      }finally{  }finally语句块在任何情况下都执行。
   JavaScript数据类型:
Boolean(布尔)、Number(数字)、String(字符串)
Undefined(未定义)、Null(空对象)、Object(对象类型)
除Object类型以外,其他是基本类型。
· js入门:
向页面输出一句话:document.wrie("Hello World");
注意:在引用外部JavaScript文件时,
正确写法:<script src="test.js" type="text/jacascript"> </script>
错误的写法:<script src="test.js" type="text/jacascript"/>
ctrl+e+d  对齐整个文档,ctrl+k+f对齐选中的代码,==值相等 ===全等


JavaScript事件:
单击一个按钮显示当前时间:
<input type="button" οnclick="js代码"/>
特殊:单击一个超链接显示当前时间
<a href="javascript:js代码"></a>
只有超链接的href中的javascript中才需要加"javascript:"因为他不是一个事件
而是把javascript:看做一种网络协议
超链接为"死链"时,使用#与javascript:void(0);的区别:#还是会跳转至当前页面,后者在内存计算一个值,返回一个undefined
js的变量(特殊)
null和undefined
null表示变量的值为空,undefined表示变量没有指向任何对象
js函数声明:不需要声明返回值类型、参数类型
 function 函数名()
{
函数体
}
匿名函数:
js中,方法名可以相同,当相同就会覆盖一个方法,所有用匿名函数避免和系统函数名相同
var f1=function (i1,i2)
{
return i1+i2;
}
alert(f1(1,2));
throw关键字:
主要用于抛出自定义异常
function division( num1 , num2 ){
if( typeof num1 != "number" || typeof num2 != "number"){
throw new Error("参数必须是数值类型...");
}
return num1 / num2;
}
alert( division(12,"张三") );
js常见全局函数:
ecodeURI() 解码某个编码的 URI
encodeURI() 把字符串编码为 URI
decodeURIComponent() 解码一个编码的 URI 组件
encodeURIComponent() 把字符串编码为 URI 组件
escape() 对字符串进行编码    (ECMAScript 3不推荐使用,用上面的函数代替)
unescape() 对由 escape() 编码的字符串进行解码
    当一个数值 除以 0 的时候,返回一个 无穷大值(infinite)
isFinite() 检查某个值是否为[有穷大]的数。 
isNaN() 检查某个值是否是数字。 Is not a number
parseFloat() 解析一个字符串并返回一个浮点数
parseInt() 解析一个字符串并返回一个整数
js常用对象:
   String   Date  Math  Array Boolean  Number
   通过typeof获取变量的类型。
   1 BOM(browser object model)游览器模型对象
   2 DOM(document object model)文档对象模型  指body中内容
   Bom对象:
window :(顶级对象 )      moveTo() (IE有,表示将当前屏幕移动到指定位置)         resizeTo()(ie有,表示改变当前游览器的大小)
navigator(地址)      screen(屏幕)               history(前进,后退)           location (链接url)          Document (整个文档)           frames(框架)
Array
js中的数组相当于C#的数组、集合、HashTable的集合
动态添加:
var arr=new Array();
var arr=new Array(1,2,3,4);
1 可以动态为数组添加属性;
var arr=new Array();
  arrr.name="张三";
  arr.age=20;
 2数组的值的类型是Object,所以里面可以存放任意类型的值
var arr=new Array();
arr[0]="张三";
arr[1]=20;
 3数组里面的值是对象类型
var arr=new Array();
arr[0]=new Array();
arr[0][0]="张三";
arr[0][1]=20;
4使用自变量表示法来为数组赋值
var arr=new Array();
arr[0]=new{"name":"张三","age":"20"};
5可以使用字面量表示法同时赋多个字,注意这里用[]
var arr=[
{"name":"张三","age":"20"},
{"name":"李四","age":"20"}
];
navigator对象:
navigator对象:
代表浏览器对象
封装了浏览器的信息
属性:
appCodeName:返回浏览器的代码名
appMinorVersion:返回浏览器的次级版本
appName:返回浏览器的名称
appVersion:返回浏览器的平台和版本信息
browserLanguage:返回当前浏览器的语言
方法:
javaEnabled()

window对象
window对象:是js层级中顶层对象,代表一个游览器窗口或一个框架
对象会在<body>或<frameset>每次出现时被自动创建,body和框架不能同时存在
属性:
frames:获取当前窗口包含框架页(数组)
closed:返回当前窗口是否被关闭
defaultStatus:当前窗口状态栏
innerheight innerwidth窗口的文档显示区的高度和宽度
self、top、parent 当前窗口、、顶层窗口、父窗口
方法
close()
open()
setTimeou()指只调用一次      和clearTimeout() 
setInterval()指循环调用,并且有返回值和clearInterval()清除时钟
注:双标签的文本值一般都是用innerHTML,innerText-----FF:contenText
document对象:
document对象代表整个文档对象,window代表真个游览器
属性:title   bgColor(修改文档的背景色)  fgColor(修改文档内容的颜色)  linkColor  charset(编码)
方法:
document.write() 指动态向页面输入内容     tag指的是标签
document.createElement(Tag) 创建一个动态的html标签对象
document.getElementById(id)获得指定id的对象
document.getELementsByName(name)获得指定name值的对象的集合(数组)
document.getElementsByTagName(标签名称)获得指定标签元素的集合
document.body.appendChild(o  tag)添加子节点
document.getElementsByClassName();类可以重复调用,所以返回时一个数组
setAttribute("name","value"); 可以动态的设置元素的属性值,动态给指定标签设定绑定属性名称和属性值
getAttribute("name");获取元素的属性值,它可以获取非HTML所支持的值
对象事件:
document.body.οnclick=func 表示鼠标指针单击事件时触发
document.body.οnmοuseοver=func 表示鼠标指针移到对象是触发
document.body.οnmοuseοut=func表示鼠标指针移出对象时触发
doucument对象的集合:
all 获取页面所有元素对象
forms 获取页面所有表单对象
images获取页面所有图片对象
links获取所有超链接
Anchors 锚记链接
注意:给标签赋文本值,如果是双标签,那么标签的文本值就是innerHTML(推荐使用)或者innerText,否者就是value
例:
appendClild是将创建好的新标签添加到父级元素的最后(追加)
window.οnlοad=function(){
document.getElementById("btnAdd").οnclick=function(){
//获取ul元素
var ulList=document.getElementById("ulList");
//创建一个li标签
var liNew=document.createElement("li");
//为li标签赋文本值。
//liNew.innerHTML="小七";
liNew.innerHTML=prompt("请输入你想输入的值","小七");
//将创建好的li标签添加到ul里面
ulList.appendChild(liNew);
}
}
如果直接获取属性,那么属性必须是HTML所支持的,如果是不支持(自定义)的属性,那么
就只能通过getAttribute("属性名称");
document.getElementById("btnAdd").getAttribute("自定义的属性");
获取指定标签(如ul)的所有子元素:标签id.childNodes;
this.parentNode.removeChild(this); 表示移除当前对象  this.parentNode当前对象的父级元素
innerText和innerHTML区别:
在div中取值的时候:
innerText:只能取出文本。
inner HTML:获取你指定的标签下面的所有html文本,不去解析
在div中赋值的时候:
innerText:直接将内容作为文本传入。
innerHTML:按照html语法来解析生成相应的html标签
在span中:
<span/>的innerHTML和<span></span>的innerHTML不一样。
前者标签结束后面内容不显示,后者显示
insertRow()和insertCell():  插入行,插入列,括号内的索引从0开始。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值