JS补充笔记
<script>
函数:
普通函数:
function func(){
}
匿名函数:
setInterval("func()",5000);
setInterval(function(){console.log(123)},5000)
自执行函数(创建函数并且自动执行):
function func() { }
func() (function(arg){console.log(arg);})(1) 序列化:
li=[1,2,3,4]
JSON.stringify(li) 将列表对象转化为字符串
JSON.parse(str) 将字符串转化为列表对象 转义:
客户端(cookie)请求服务器端
将数据转义之后保存到cookie里面 eval
python:
val =eval(表达式)
exec(执行代码)
JavaScript:
eval
时间:
Date类
var d=new Date()
d.getxxx 获取
d.setxxx 设置
作用域:
五句话搞定JavaScript作用域
其他语言:以代码块作为作用域
python中是以函数作为作用域的
javascript:以函数作为作用域(let)
function def() {
if(1==1){var name = 'za'};
console.log(name);
}
def ()
2.函数的作用域在函数未被调用之前,已经创建
3、函数的作用域存在作用域链,并且也是在被调用之前创建
a = '123';
function def(){
var a = '456';
function inner(){
console.log(a);
}
return inner;
}
var ret = def()
ret()
4、函数内部局部变量提前声明
解释的过程中会执行var a;但是不会赋值
function def() {
console.log(a);
var a= '123'
}
javascript面向对象:
不能将类的方法定义在类里面需要写在原型里面,因为每次创建实例都会创建类的方法,所以要把方法写在原型里面。避免浪费内存
类的创建实例:
function Foo(n) {
this.name = n #相当于self.name
}
#Foo的原型:
Foo.prototype={
'sayname':function () {
console.log(this.name)
}
} DOM:
查找
直接查找/间接查找:
var obj = document.getElementById('i1');
obj.innerText 处理全部文本,不包含当前标签内的标签
obj.innerHTML 包含所有,包括里面的标签
赋值:
obj.innerText='xxxx';
obj.innerHTML= '<a href="www.baidu.com"> xxxx</a>';
value (
针对input value获取当前标签中的值)
select 获取选中的value值(selectedIndex)
textarea value获取当前标签中的值
搜索框的实例:
样式的操作:
obj.className
obj.classList:
obj.classList.add()
obj.classList.remove()
obj.style.fontSize = '16px'
obj.style.backgroundColor = '16px'
obj.style.color = '16px'
属性的操作:
obj.setAttribute()
obj.removeAttribute()
obj.attributes
创建标签并增加到html中
1、字符串形式
2、对象的方式
提交表单:
任何标签都可以通过JavaScript提交表单
其他:
console.log()
alert()
var v=confirm(信息) v为true或false 弹出确认框
刷新
localtion.href 获取当前网页
localtion.href='www.xxxxx'重定向,跳转
localtion.reload() 相当于 localtion.href=localtion.href 刷新功能
定时器:
var obj = setInterval(function () {
console.log(123)
},5000)
clearInterval(obj);清除定时器
定时器只执行一次 5秒后执行
setTimeout(function () {
console.log(123)
},5000)
clearTimeout() 清除定时器
事件:
onclick,onblur,onfocus
面试题:行为。样式。结构相分离的页面?
JS CSS HTML
绑定事件的两种方式
a 直接标签绑定 onclick=‘xxxx()’
b 先获取DOM对象,然后进行绑定
document.getElementById('xx').onclick
document.getElementById('xx').onfocus
this,当前触发事件的标签
a.第一种绑定方式
<input id='i1' type='button' onclick='Clickon(this)'>
function Clickon(self) {
// 当前点击的标签
}
b、第二种绑定方式
<input id='i1' type='button'>
document.getElementById('i1').onclick=function () {}
c、第三种绑定方式
var mydiv=document.getElementById('i1')
mydiv.addEventListener('click',function(){console.log(123)},false);
mydiv.addEventListener('click',function(){console.log(456)},false);
一个事件执行两个函数 false是冒泡模式,当两个div重叠是,点击重叠部分false会先执行上层,true会先执行下层 作用域实例:
var myTrs = document.getElementsByTagName('tr');
var len =myTrs.length;
for(var i=0;i<len;i++){
myTrs[i].onmouseover=function () {
// 谁调用的函数this就会指向谁 为什么使用this而不使用myTrs【i】是因为函数作用域的问题,每次遍历函数的名称都会变
this.style.backgroundColor='red'
}
myTrs[i].onmouseout=function () {
// 谁调用的函数this就会指向谁
this.style.backgroundColor=''
}
}
sublime text emmet插件,方便书写代码
</script>
JS补充笔记的更多相关文章
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Vue.js学习笔记(2)vue-router
vue中vue-router的使用:
- js读书笔记
js读书笔记 基本类型的基本函数总结 1. Boolean() 数据类型 转换为true的值 转换为false的值 Boolean true false String 任何非空字符串 "&q ...
- React.js入门笔记
# React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...
- JS 学习笔记--9---变量-作用域-内存相关
JS 中变量和其它语言中变量最大的区别就是,JS 是松散型语言,决定了它只是在某一个特定时间保存某一特定的值的一个名字而已.由于在定义变量的时候不需要显示规定必须保存某种类型的值,故变量的值以及保存的 ...
- node.js系列笔记之node.js初识《一》
node.js系列笔记之node.js初识<一> 一:环境说明 1.1 Linux系统CentOS 5.8 1.2 nodejs v0.10.15 1.3 nodejs源码下载地址 htt ...
- JS面向对象笔记二
菜单导航,<JS面向对象笔记一>, 参考书籍:阮一峰之<JavaScript标准参考教程> 一.构造函数和new命令 二.this关键字 三.构造函数和new命令 四.构造函 ...
- WebGL three.js学习笔记 使用粒子系统模拟时空隧道(虫洞)
WebGL three.js学习笔记 使用粒子系统模拟时空隧道 本例的运行结果如图: 时空隧道demo演示 Demo地址:https://nsytsqdtn.github.io/demo/sprite ...
- WebGL three.js学习笔记 法向量网格材质MeshNormalMaterial的介绍和创建360度全景天空盒的方法
WebGL学习----Three.js学习笔记(5) 点击查看demo演示 Demo地址:https://nsytsqdtn.github.io/demo/360/360 简单网格材质 MeshNor ...
随机推荐
- Python----公开课
# 构造函数- 类在实例化的时候,执行一些基础性的初始化的工作- 使用特殊的名称和写法- 在实例化的时候自动执行- 是在实例化的时候第一个被执行的函数- ----------------------- ...
- 面试题常考&必考之--http访问一个页面的全流程(Tcp/IP协议)
分析:-http访问一个页面的全流程,也就好比我们在地址栏输入地址,然后点击回车进行访问 该面试题的主要考点是:计算机网络的TCP/IP协议栈 描述图片:首先应用层提交http请求,传到传输层后由,T ...
- 15 Spring Boot Shiro 验证码
1. <dependency> <groupId>com.github.axet</groupId> <artifactId>kaptcha</a ...
- asp.net能否上传文件夹下所有文件
HTML部分 <%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="index.aspx. ...
- POJ 3046 Ant Counting ( 多重集组合数 && 经典DP )
题意 : 有 n 种蚂蚁,第 i 种蚂蚁有ai个,一共有 A 个蚂蚁.不同类别的蚂蚁可以相互区分,但同种类别的蚂蚁不能相互区别.从这些蚂蚁中分别取出S,S+1...B个,一共有多少种取法. 分析 : ...
- 软件安装——JRE多版本问题
[Q]运行UMongo.exe文件时显示错误信息“The registry refers to a nonexsistent JAVA Runtime Envioroment or the Runti ...
- (21)UML类图学习及使用
UML类图的学习和使用 1.参考博客http://www.uml.org.cn/oobject/201211231.asp
- LOJ504「LibreOJ β Round」ZQC 的手办
https://loj.ac/problem/504 题解 对于区间取\(\max\),这个比较好办,直接在线段树上打标记就行了. 如果让我们弹出前\(n\)个数,我们可以用类似超级钢琴的思想,队列中 ...
- uva live 7635 National Bomb Defusing Squad
题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_ ...
- 接上SQL SERVER的锁机制(一)——概述(锁的种类与范围)
二.完整的锁兼容性矩阵(见下图) 对上图的是代码说明:见下图. 三.下表列出了数据库引擎可以锁定的资源. 名称 资源 缩写 编码 呈现锁定时,描述该资源的方式 说明 数据行 RID RID 9 文件编 ...