js文件放header头最后,js代码放body体最后

js语言定位:
js是基于对象的语言
php、java是面向对象的语言

定义变量:
var str="hello world"

js变量作用域:
1.函数外面定义的变量不管带不带var全部都是全局变量
2.函数里面定义的变量,带var的是局部变量,不带var的是全局变量

js变量类型:

js基础对象:
1.window //窗口对象
2.document //文档对象
3.document.documentElement //html对象
4.document.body //body对象
5.document.head //head对象

js特效:
1.通过js把标签转成元素对象
2.js操作标签样式
3.js操作标签事件

js变量类型:
1.字符串
2.整形
3.浮点
4.布尔
5.数组
6.对象
7.json对象
8.NaN //不是一个数字
9.null
10.undefined

测试变量类型
typeof();

Global对象方法:
parseInt(string, radix)
parseFloat(string)
typeof(Object)
eval(string)
isNaN(testValue)
String(Object)
Number(Object)
Array()
Object()
Bool()
转布尔类型后哪些为假:
0
false
""
null
undefined
NaN

转布尔类型方法:
1.Boolean(num)
2.!!num

js运算符
1.+ 字符串连接符
2. new 创建新对象用的
3.this 本对象
4.in 检查某一个属性是否是这个对象里面的
5.instanceof 检查某个对象是否是由某个构造函数产生的
6.delete 不能删除用var定义的变量,其他都可以用delete删除

js语法:
if;...else
for
while
switch...case
with
for...in

js弹窗
1.alert() //警告
2.confirm() //确认
3.prompt() //提醒

js内置对象
1.数学
2.日期
3.定时器
4.超时器
5.字符串
6.数组

数学对象:
Math.PI
Math.ceil()
Math.random()
Math.max()
Math.min()

日期对象:
var dd=new Date();
alert(dd.getFullYear()); //年
alert(dd.getMonth()+1); //月
alert(dd.getDate()); //日
alert(dd.getHours()); //时
alert(dd.getMinutes()); //分
alert(dd.getSeconds()); //秒

定时器:
setInterval();
clearInterval();

超时器:
setTimeout();
clearTimeout();

字符串函数:
属性:
length
方法:
indexOf() //返回 String 对象内第一次出现子字符串的字符位置
lastIndexOf() //最后一次出现的位置
substr(3) //从位置3开始截取
slice(0,3) //截取0-3
split() //将一个字符串分割为子字符串,然后将结果作为字符串数组返回。支持正则
search() //返回与正则表达式查找内容匹配的第一个子字符串的位置
match()
replace()

js数组对象
属性:
arr.length()
方法:
pop() //弹出数组最后一个元素
push() //从最后添加一个元素
shift() //从开头删除一个元素
unshift() //从开头添加一个元素
slice() //从数组中截取一部分元素
concat() //连接多个数组
reverse() // 翻转数组元素
sort() //数组元素排序
splice() //删除并替换数组元素

js Dom对象
1.windows
2.document
3.document.head
4.document.body
5.document.title
6.document.documentElement

获取元素对象
1.document.getElementById()
2.document.getElementsByTagName()
3.document.getElementsByClassName();
获取页面上所有元素对象
document.getElementsByTagName('*');

document.all; //仅IE支持

总结元素对象常用方法:
obj.innerHTML
obj.outerHTML
obj.length
obj.outerHTML
obj.innerText //即将淘汰
obj.textContent
obj.tagName

测试一些高度
obj.clientHeight; //本身的高
obj.offsetHeight; //包含边框的高

document.body.clientHeight; //文档的高 屏幕的文档区域的高
document.documentElement.clientWidth;
document.documentElement.clientHeight; //有效的高 屏幕可视的高
document.documentElement.scrollHeight; //屏幕的总高度
document.documentElement.scrollTop; //滚动的高 滚动的高度

document.documentElement.scrollTop //已经滚动了的高度,chrome不支持,其他支持
document.body.scrollTop; //已经滚动了的高度,仅chrome支持

js对象:
1.obj=new Object()
2.obj=document.getElementById()
3.obj={"name","user1"}

阻止默认行为:
event.preventDefault();
或者
return false;

1.<a href="inde.php" onclick="return false;">超链接</a>
2.aobj.onclick=function(event){
//event.preventDefault();
return false;
}
默认行为:a标签提交或者表单submit提交

js事件
onabort 图像加载被中断
onblur 元素失去焦点
onchange 用户改变域的内容
onclick 鼠标点击某个对象
ondblclick 鼠标双击某个对象
onerror 当加载文档或图像时发生某个错误
onfocus 元素获得焦点
onkeydown 某个键盘的键被按下
onkeypress 某个键盘的键被按下或按住
onkeyup 某个键盘的键被松开
onload 某个页面或图像被完成加载
onmousedown 某个鼠标按键被按下
onmousemove 鼠标被移动
onmouseout 鼠标从某元素移开
onmouseover 鼠标被移到某元素之上
onmouseup 某个鼠标按键被松开
onreset 重置按钮被点击
onresize 窗口或框架被调整尺寸
onselect 文本被选定
onsubmit 提交按钮被点击
onunload 用户退出页面
oncontextmenu 右键上下文菜单

js事件方法:
select();
focus();

getAttribute(); //获取属性的值
setAttribute(); //设置属性的值

js BOM浏览器对象
1.window对象
2.navigator对象
3.screen对象
4.history对象
5.location对象
6.document对象

window对象
属性:
frames //窗口数组
length //frame个数
name //窗口名字 target="win2"
opener //打开我的那个窗口
parent //父窗口
top //顶级窗口
closed //测试某个窗口是否被关闭

方法:
open("right.html","win2","特性")
窗口特性:
fullScreen=1|0 //是否全屏
width="" //窗口宽
height="" //窗口高
left="" //离屏幕左上角的left
top="" //离屏幕左上角的top
location=1|0 //是否有地址栏
menubar=1|0 //是否有菜单

alert()
confirm()
prompt()
setInterval()
clearInterval()
setTimeout()
clearTimeout()
close() //ie没问题,ff有问题,ff子窗口
moveTo() //ie没问题,ff有问题,ff子窗口
moveBy() //ie没问题,ff有问题,ff子窗口
resizeTo() //ie没问题,ff有问题,ff子窗口
resizeBy() //ie没问题,ff有问题,ff子窗口
scrollTo() //都支持,做一些滚动条有关的特效
scrollBy() //都支持,做一些滚动条有关的特效
navigator对象:
属性:
userAgent //更精确的版本

screen屏幕对象:
属性:
height
width

availHeight //有效高
availWidth; //有效宽

history历史对象:
属性:
length //返回历史个数
方法:
back() //后退一个历史go(-1)
forward() //前进一个历史go(1)
go(2) //前进两个历史
go(-2) //后退两个历史

location对象:
属性:
hash //获取url里的锚点
#abc
host //主机名
href //地址跳转,保留历史,也可以不写href直接写location="index.html"
pathname //index.html页面的名称
port //端口:80
portocol //协议 http:
search //参数 ?id=10&name=user1
方法:
reload() //加载当前页面,刷新当前页面
replace() //加载当前页面,还可以跳转,但是不留历史

文档内常用集合:
1.forms
2.elements
3.options
4.rows
5.cells
6.images
7.links
8.anchors //锚点
9.frames

Ajax无刷新技术:
1.找到Ajax对象xmlHttpRequest (xhr)
FF:
xmlhttp=new XMLHttpRequest();
IE:
xmlhttp=new ActiveXobject("Microsoft.XMLHTTP");

2.Ajax属性
xhr.responseText;
3.Ajax get方法
xhr.open("get","index.php",true);
xhr.send();
4.Ajax post方法:
xhr.open("post","index.php",true)
xhr.send(string) //必须是字符串
4.Ajax事件
xhr.readystatechange=function(){}

1. js DOM document object model
2.DOM对象集合
3.window.frames
4.document.froms
5.document.elements
6.document.elements[0].options
7.document.images
8.document.links
9.document.anchors
10.tabobj.rows
11.tabobj.rows[0].cells
12.eleobj.innerHTML
13.eleobj.outerHTML
14.eleobj.textContent
15.eleobj.getAttribute()
16.eleobj.setAttribute()
17.document.head
18.document.title
19.document.body
20.document.getElementById()
21.document.getElementsByTagName()
22.document.getElementsByClassName()
23.document.createElement()
23.js ajax XMLHttpRequest对象

强哥JavaScript学习笔记的更多相关文章

  1. 强哥jQuery学习笔记

    js对象: 1.js内置对象 2.js元素对象 3.jquery对象 js特效: 1.js元素对象 2.jQuery对象 jQuery学习: 1.核心函数 2.选择器 3.筛选 4.文档处理 5.属性 ...

  2. 强哥ThinkPHP学习笔记

    TP框架:1.模板引擎2.MVC设计模式3.常用操作类 模板引擎和框架区别1.模板引擎只是框架中用来做php和html分离 MVC设计模式M model 数据模型V view 视图C control ...

  3. 强哥PHP学习笔记

    1.php的代码,必须放在.php的文件中,php代码必须写在<?php ?>之间. 2.//单行注释 /* 多行注释 */ 3.默认首页index.php index.html inde ...

  4. 强哥MySQL学习笔记

    数据库服务器:1.数据库2.数据表 数据表:1.表结构(字段)2.表数据(记录)3.表索引(加快检索) 表引擎:1.myisam2.innodb 查看表字段desc table;删除数据库:drop ...

  5. 强哥memcache学习笔记

    搭建memcache服务器:1.在内存中缓存数据2.数据形态以key->value memcache优点:1.快速缓存2.跨域登录memcache缺点:1.复杂的数据存取的操作2.不能永久保存数 ...

  6. 强哥HTML学习笔记

    html 浏览器的选择:1.火狐2.ie3.chrome4.mac5.opera 安装两款插件:1.firebug2.web develope html页面元素:1.doctype2.htmlhead ...

  7. 强哥CSS学习笔记

    html嵌套css样式:1.外部(推荐)2.内部3.内联(不推荐) css优先级1.内联2.id选择器3.class选择器4.标签 css长度单位:1.px2.em (14px) css选择器:常用选 ...

  8. Javascript学习笔记——操作浏览器对象

    Javascript学习笔记 目前尝试利用javascript去对于一个浏览器对象完成一系列的访问及修改, 浏览器是网页显示.运行的平台,常用的浏览器有IE.火狐(Firefox).谷歌(Chrome ...

  9. Java程序猿的JavaScript学习笔记(汇总文件夹)

    最终完结了,历时半个月. 内容包含: JavaScript面向对象特性分析,JavaScript高手必经之路. jQuery源代码级解析. jQuery EasyUI源代码级解析. Java程序猿的J ...

随机推荐

  1. 【2020.02.01NOIP普及模拟4】怪兽

    [2020.02.01NOIP普及模拟4]怪兽 文章目录 [2020.02.01NOIP普及模拟4]怪兽 题目描述 输入 输出 输入输出样例 数据范围限制 提示 解析 code 题目描述 PYWBKT ...

  2. CVE-2021-21402 Jellyfin任意文件读取

    CVE-2021-21402 Jellyfin任意文件读取 漏洞简介 jellyfin 是一个自由的软件媒体系统,用于控制和管理媒体和流媒体.它是 emby 和 plex 的替代品,它通过多个应用程序 ...

  3. 【Android】修改Android Studio的SDK位置

    解决SDK占用C盘空间问题 由于Android Studio默认会将环境下载到C盘,会导致C盘空间被大量占用. 对于C盘窘迫的童鞋非常不友好. 可以通过修改SDK位置的方式缓解C盘空间焦虑. 打开&q ...

  4. Linux 查看GPU状态

    Linux 查看GPU状态 nvidia-smi nvidia-smi是NVIDIA自带的一个命令可以详细的展示显卡的运行状态. gpustat gpustat是github上开源的一个小工具,对于v ...

  5. 深入学习spring cloud gateway 限流熔断

    前言 Spring Cloud Gateway 目前,Spring Cloud Gateway是仅次于Spring Cloud Netflix的第二个最受欢迎的Spring Cloud项目(就GitH ...

  6. Java8中的Optional操作

    作者:汤圆 个人博客:javalover.cc 前言 官人们好啊,我是汤圆,今天给大家带来的是<Java8中的Optional操作>,希望有所帮助,谢谢 文章纯属原创,个人总结难免有差错, ...

  7. TortoiseGit2.12.0-64下载和安装【Windows10】

    TortoiseGit2.12.0-64下载和安装[Windows10] 下载 下载地址:https://tortoisegit.org/download/ 找到合适自己版本的点击后会自动下载 安装 ...

  8. ESP32音频开发板ESP32-Korvo V1.1踩坑

    电池供电ESP32-Korvo V1.1开发板供电电压低于3.9V不断复位: 报错->Brownout detector was triggered 断电探测器触发复位 根据同行资料发现,禁用断 ...

  9. 2021S软件工程——个人阅读作业2

    2021S软件工程--个人阅读作业2 项目 内容 这个作业属于哪个课程 2021春季软件工程(罗杰 任建) 这个作业的要求在哪里 个人阅读作业#2 我在这个课程的目标是 了解并熟悉软件开发的具体流程, ...

  10. 基于MATLAB的手写公式识别(8)

    从一个无知角落里开始,蹒跚学步,一个未知到另一个未知,在跌跌撞撞中越走越快,越走越远,最后宇宙也为之开源.对于探索者来说,最后他们的思想总是变得和自己的足迹一样伟大.   1.图像的预处理 1.1图像 ...