JavaScript 笔记

JavaScript的组成

ECMAScript --JavaScript遵循的一套脚本语言标准

BOM --浏览器对象模型

     ~~~~     通过BOM可以操作浏览器窗口

DOM --文档对象模型

     ~~~~     DOM可以把HTML看作是文档树,通过DOM提供的API可以对树上的节点进行操作

快速入门

书写格式

行内式
$$1. 标签的属性οnclick=";"
$
$2. a标签的href里
页内式
     ~~~~     script标签,多数放在文档尾部
外链式
     ~~~~     Script标签,在src属性中写上路径

注释

同C

常见的输出方式

弹窗
     ~~~~     alert(’ ‘); --window.alert(’ ‘);
     ~~~~     prompt.(’ ‘); --prompt.alert(’ ‘); 弹出输入框
     ~~~~     confirm.(’ ‘); --confirm.alert(’ ‘); 弹出提示框
控制台
     ~~~~     console.log(’ ‘);
     ~~~~     console.warn(’ ‘);
     ~~~~     console.error(’ ‘);
向body中输出一个内容
     ~~~~     document.write(’ ‘); --window.document.write(’ '); ,可以写入字符串或者标签

基础语法

变量与常量

定义变量 var a=10; 未初始化的值为undefined
声明常量(仅限ECMAScript6) const PI = 3.14159;

数据类型

使用typeof anyVar 来查看

Number

包含整数和小数
最值 Number.MAX_VALUE Number.MIN_VALUE
无穷大无穷小 Infinity -Infinity
非法数字 NaN (Not a Number)

String

由单引号或双引号括起来

Boolean

任何非零数字,非空字符串,对象都是true; 0,’’,null和undefined是false

Null和Undefined

都是只有一个值,分别为null和undefined
undefined由null衍生而来

应用(复杂)数据类型
数据类型转换
转换成字符串

.toString()方法 可以有一个整数参数,返回对应进制的字符串,null和undefined不能用此方法
String(anyVar)方法
拼接字符串(同java)

转换成数字

Number(anyStringOrBooleanOrUndefinedOrNull) 非法的转成NaN,null是0,undefined是NaN
parseInt() (两个参数,第二个为进制,可缺省) parseFloat() (一个参数,只能解析十进制) 必须从第一位开始,匹配第一个有效数字
在字符串前加+,会等价于调用Number方法,加-变成相反数 也可以 anyString - 0
#####转换成Boolean
Boolean()

####运算符
大致同C
&~~~~&注意===运算符表示恒等,先比较数据类型再比较数值

代码块

在ECMAScript6中,大括号括起的表示一个代码块,作用同C

流程控制
选择结构

if --用法同C
switch --用法同C

循环结构

break continue --同C
while --同C
do-while --同C
for --同C

数组

创建数组
     ~~~~      var arr1=new Array(); 或 var arr1=[];
     ~~~~      var arr2=new Array(LENGTH);
     ~~~~      var arr3=new Array(1,2,3); 或var arr3=[1,2,3];
length
     ~~~~      数组的长度=数组名.length;(可以改变长度,可以直接对大于等于length的下标赋值)
下标访问
     ~~~~      arr[NUM];

函数
基本结构

function f(PARAMETERS){
     ;
}
//或
var f=function(PARAMETERS){
    ;
}
//或
var func=new function("console.log(‘1’); );

Window.arguments --在函数里存放传入的参数
return 函数返回值

匿名函数

function(){}

用在绑定事件的时候

document.onclick = function(){}

定时器

setInterval(function(){console.log(‘每秒一次’);},1000)

立即执行函数(闭包)

#####预解析
会把声明的变量和函数提到作用域的最前面

对象

对象是一组无序属性的集合,其属性可以包含基本值,对象和函数

对象的分类

内建对象
     ~~~~     由ECMAScript定义的对象,如Number,String等
宿主对象
     ~~~~     有js运行的宿主环境提供的对象,目前主要指浏览器,如DOM对象,BOM对象
自定义对象

创建对象的方式

对象字面量

var duixiang={
    //添加属性和方法
}

new Object()创建对象

var obj=new Object();
//添加obj的属性和方法

工厂函数创建对象

//在函数里用new Object()方法返回一个对象

自定义构造函数

//就是自定义Object方法
function Example(var1,var2){
    this.var1=var1;
    this.var2.var2;
    this.func=function(){
        ;
    }
}
var obj1=new Example(VAR1,VAR2);

访问对象的属性与遍历

访问属性的两种方式

obj.name;
//或
obj[‘name’]

遍历

for(var key in obj){
    obj[key];
}

删除
delete obj.name;

JavaScript事件

onClick事件
onChange事件
onSelect事件
onFocus事件
onLoad事件
onUnload事件
onBlur事件
onMouseOver事件
onMouseOut事件
onDblClick事件
其他事件

浏览器的内部对象

navigator对象

属性:
appName 浏览器的名称
appVersion 浏览器的版本
appCodeName 浏览器的代码名称
browserLanguage 浏览器所使用的语言
plugins 可以使用的插件
platform 所使用的平台 如win32等
cookieEnabled 浏览器cookie功能是否打开

document对象

  • anchor锚对象<a name=…></>标记在HTML源代码中存在产生的对象
  • links链接对象 <a href=…></>标记链接的一个超文本或超媒体的元素作为一个特定的URL
  • form窗体对象

windows对象

常用方法
open(url,windowName,parameterlist) 创建一个新窗口,3个参数分别用于设置URL地址,窗口名称和窗口打开属性
close() 关闭一个窗口
alert(text)弹出窗口,显示text
confirm(text) 弹出确认域,text为窗口中的文字
prompt(text,defaulttext)弹出提示框
moveBy(水平位移,垂直位移) 将窗口移至指定的坐标
moveTo(x,y)
resizeBy(水平位移,垂直位移)
resizeTo(x,y)
back()页面后退
forward()页面前进
home() 返回主页
stop()停止装载网页
print()打印网页
status 状态栏信息
location 当前窗口的URL信息
### location对象
描述某一个窗口对象所打开的地址

history对象

浏览器的浏览历史

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值