JS笔记(一)
第一章:
编写JS流程:
1、 布局:HTML和CSS
2、 样式:修改页面元素样式,div的display样式
3、 事件:确定用户做什么操作,onclick(鼠标点击事件)、onmouseover(鼠标悬停)、onmouseout(鼠标移出)
4、 编写JS:在事件中,用JS来修改页面元素样式
5、 原理:响应用户的操作,对页面元素进行样式修改
第二章:
Javascript基础:
JS代码的引入:
外部链入式:
<script type=”text/javascript” src=”js文件路径”></script>
内部js:
<script>js代码</script>
数据类型:
var a=12;
数值类型number
alert(typeof a);
字符串string
a="hello";
alert(typeof a);
布尔类型boolean
a=true;
alert(typeof a);
函数类型function
a=function(){};
alert(typeof a);
对象object
a=document;
alert(typeof a);
没有定义的类型undefined
alert(typeof a);
- 变量名的命名规则:不以数字开头大小写字母、数字、下划线命名;(区分大小写);常用命名规则:驼峰命名法,首字母小写后面单词首字母大写开头;如:getDingShiQi
- 变量的转换:
parseInt(值); 将一个值转换为Int数据类型
parseFloat(值); 将一个值转换为float数据类型
隐式转换:
Var a=5, b=”5”, c=”2”;
先转换类型,再比较:
a==b;
不转换类型,直接比较
a===b;
不转换类型,+为连接符
a+b;
先转换类型,再进行运算,+为运算符
a+b;
- 变量的作用域:
1、 全局变量:位于函数体外部的变量,所有函数均可调用与赋值;
2、 局部变量:位于函数体中的变量,仅仅为其所在函数体中使用,其他函数定义相同的变量名不会冲突;
- 闭包:子函数可以使用父函数里定义的函数
- 求余运算符:% var a=34; var c = a%10; c为4;
- 判断语句 Switch 语句:
语法:
switch(值或者变量)
{
case 值:
语句块;
break;
case 值:
语句块;
break;
default:
语句块;
}
判断switch括号里面的值与case的值是否相等、相等则执行case 里的语句块,遇到break;则结束,否则继续执行下面的其他case里面的语句块直至遇到break; 跳出。若判断case里面没有相符合的,则执行default 下的语句块,这里的default相当于else
- break,continue的区别: 一般在循环体中使用这两;break;跳出全部循环;continue; 跳出本次循环
- 真假:为boolean数据类型;
1、 非0的数字为真,0为假;
2、 非空字符串为真,空字符串为假;
3、 非空对象为真,空对象为假;
4、 Undefined为假;
- 可变参arguments 调用函数时传递多个参数形成一个arguments数组;可以直接用下标调用
它,如arguments[0];
- 提取非行间样式[只能用id的方式]:currentStyle为ie里面的
语法:document.getElementById("div1").currentStyle.width;
getComputedStyle 为firefox里面的
语法:window.getComputedStyle(oBj,null).width;
- 数组基础:
声明一个数组:var Arr = new Array();
声明并初始化:var Arr = [1,2,3,4,5];
Arr.push(); 在数组尾部添加一个或者多个元素,并返回一个新的长度;
Arr.pop(); 在数组尾部删除并返回最后一个元素;
Arr.unshift(); 在数组头部添加一个或者多个元素,并返回一个新的长度;
Arr.shift(); 在数组头部删除并返回第一个元素;
Arr.sort(); 对数组进行排序;按照默认顺序排序;
Arr.join(“,”); 在数组原有元素间插入元素”,”
Arr.concat(Brr); 连接Arr和Brr数组返回新的数组
第三章:
定时器:var 定时器名=setInterval(tick, 1000); 设置定时器,每隔1000毫秒调用tick函数构建图片的src属性值
Var 定时器名=setTimeout(tick, 1000); 设置定时器,隔1000毫秒调用tick函数构建图片的src属性值
清除定时器:
clearTimeout(定时器名);
clearInterval(定时器名);
第四章:
offsetLeft(); 语法:oBj.offsetLeft(); 返回当前元素距离父元素左边缘的距离;
第五章:
InnerHTML 语法:oBj.innerHTML; innerHTML具有双向功能,通过它可以获取标签元素内容与设置标签元素内容;
- 子节点和父节点:
childNodes获取子节点 childNodes返回的是子节点的集合,是一个数组的格式。他会把换行和空格也当成是节点信息。childNodes.length获取长度
利用children来获取子元素是最方便的,他也会返回出一个数组。对其获取子元素的访问只需按数组的访问形式即可。
firstChild来获取第一个子元素
使用firstElementChild来获取第一个子元素的时候,会获取到父元素第一个子元素的节点 这样就能直接显示出来文本信息了。他并不会匹配换行和空格信息。
parentNode获取父节点
parentElement和parentNode一样,只是parentElement是ie的标准。
offsetParent获取所有父节点
其实这个是于位置有关的上下级 ,直接能够获取到所有父亲节点, 这个对应的值是body下的所有节点信息。
欢迎来指正与提问。
第一章:
编写JS流程:
1、 布局:HTML和CSS
2、 样式:修改页面元素样式,div的display样式
3、 事件:确定用户做什么操作,onclick(鼠标点击事件)、onmouseover(鼠标悬停)、onmouseout(鼠标移出)
4、 编写JS:在事件中,用JS来修改页面元素样式
5、 原理:响应用户的操作,对页面元素进行样式修改
第二章:
Javascript基础:
JS代码的引入:
外部链入式:
<script type=”text/javascript” src=”js文件路径”></script>
内部js:
<script>js代码</script>
数据类型:
var a=12;
数值类型number
alert(typeof a);
字符串string
a="hello";
alert(typeof a);
布尔类型boolean
a=true;
alert(typeof a);
函数类型function
a=function(){};
alert(typeof a);
对象object
a=document;
alert(typeof a);
没有定义的类型undefined
alert(typeof a);
变量名的命名规则:不以数字开头大小写字母、数字、下划线命名;(区分大小写);常用命名规则:驼峰命名法,首字母小写后面单词首字母大写开头;如:getDingShiQi
变量的转换:
parseInt(值); 将一个值转换为Int数据类型
parseFloat(值); 将一个值转换为float数据类型
隐式转换:
Var a=5, b=”5”, c=”2”;
先转换类型,再比较:
a==b;
不转换类型,直接比较
a===b;
不转换类型,+为连接符
a+b;
先转换类型,再进行运算,+为运算符
a+b;
变量的作用域:
1、 全局变量:位于函数体外部的变量,所有函数均可调用与赋值;
2、 局部变量:位于函数体中的变量,仅仅为其所在函数体中使用,其他函数定义相同的变量名不会冲突;
3、
闭包:子函数可以使用父函数里定义的函数
求余运算符:% var a=34; var c = a%10; c为4;
判断语句 Switch 语句:
语法:
switch(值或者变量)
{
case 值:
语句块;
break;
case 值:
语句块;
break;
default:
语句块;
}
判断switch括号里面的值与case的值是否相等、相等则执行case 里的语句块,遇到break;则结束,否则继续执行下面的其他case里面的语句块直至遇到break; 跳出。若判断case里面没有相符合的,则执行default 下的语句块,这里的default相当于else
break,continue的区别: 一般在循环体中使用这两;break;跳出全部循环;continue; 跳出本次循环
真假:为boolean数据类型;
1、 非0的数字为真,0为假;
2、 非空字符串为真,空字符串为假;
3、 非空对象为真,空对象为假;
4、 Undefined为假;
可变参arguments 调用函数时传递多个参数形成一个arguments数组;可以直接用下标调用
它,如arguments[0];
提取非行间样式[只能用id的方式]:currentStyle为ie里面的
语法:document.getElementById("div1").currentStyle.width;
getComputedStyle 为firefox里面的
语法:window.getComputedStyle(oBj,null).width;
数组基础:
声明一个数组:var Arr = new Array();
声明并初始化:var Arr = [1,2,3,4,5];
Arr.push(); 在数组尾部添加一个或者多个元素,并返回一个新的长度;
Arr.pop(); 在数组尾部删除并返回最后一个元素;
Arr.unshift(); 在数组头部添加一个或者多个元素,并返回一个新的长度;
Arr.shift(); 在数组头部删除并返回第一个元素;
Arr.sort(); 对数组进行排序;按照默认顺序排序;
Arr.join(“,”); 在数组原有元素间插入元素”,”
Arr.concat(Brr); 连接Arr和Brr数组返回新的数组
第三章:
定时器:var 定时器名=setInterval(tick, 1000); 设置定时器,每隔1000毫秒调用tick函数构建图片的src属性值
Var 定时器名=setTimeout(tick, 1000); 设置定时器,隔1000毫秒调用tick函数构建图片的src属性值
清除定时器:
clearTimeout(定时器名);
clearInterval(定时器名);
第四章:
offsetLeft(); 语法:oBj.offsetLeft(); 返回当前元素距离父元素左边缘的距离;
第五章:
InnerHTML 语法:oBj.innerHTML; innerHTML具有双向功能,通过它可以获取标签元素内容与设置标签元素内容;
子节点和父节点:
childNodes获取子节点 childNodes返回的是子节点的集合,是一个数组的格式。他会把换行和空格也当成是节点信息。childNodes.length获取长度
利用children来获取子元素是最方便的,他也会返回出一个数组。对其获取子元素的访问只需按数组的访问形式即可。
firstChild来获取第一个子元素
使用firstElementChild来获取第一个子元素的时候,会获取到父元素第一个子元素的节点这样就能直接显示出来文本信息了。他并不会匹配换行和空格信息。
parentNode获取父节点
parentElement和parentNode一样,只是parentElement是ie的标准。
offsetParent获取所有父节点
其实这个是于位置有关的上下级,直接能够获取到所有父亲节点,这个对应的值是body下的所有节点信息。
JS笔记(一)的更多相关文章
- Data Visualization and D3.js 笔记(1)
课程地址: https://classroom.udacity.com/courses/ud507 什么是数据可视化? 高效传达一个故事/概念,探索数据的pattern 通过颜色.尺寸.形式在视觉上表 ...
- js笔记-0
#js笔记-0 数组: indexOf方法: Array也可以通过indexOf()来搜索一个指定的元素的位置: var arr = [10, 20, '30', 'xyz']; arr.indexO ...
- PPK谈JS笔记第一弹
以下内容是读书笔记,再一次温习JS好书:PPK谈JS window.load=initializePageaddEventSimple('window','load',function(){}) lo ...
- 面向小白的JS笔记 - #Codecademy#学习笔记
前言 最初浏览过<JavaScript秘密花园>,前一段时间读过一点点<JavaScript语言精粹>和一点点<JavaScript高级程序设计>(一点点是指都只是 ...
- require.js笔记
笔记参考来源:阮一峰 http://www.ruanyifeng.com/blog/2012/10/javascript_module.html 1. 浏览器端的模块只能采用“异步加载”方式 = ...
- JS笔记 入门第四
小测试: 注意:取消所有的设定可以直接使用 document.getElementById("txt").removeAttribute("style"); 这 ...
- JS笔记 入门第二
输出内容 document.write(); alert("hello!"); alert(mynum); </script> 注:alert弹出消息对话框(包含一个确 ...
- Node.js笔记1
Node.js入门笔记 1. node -help 可以显示帮助信息2. node REPL 模式(Read-eval-print loop) 输入—求值—输出循环 直接在cmd输入node 可以进入 ...
- JS笔记 入门第一
WHY? 一.你知道,为什么JavaScript非常值得我们学习吗? 1. 所有主流浏览器都支持JavaScript. 2. 目前,全世界大部分网页都使用JavaScript. 3. 它可以让网页呈现 ...
- 奇舞js笔记——第0课——如何写好原生js代码
摘要 1.好的代码职责要清晰,javscript不要用来操作样式: 2.API要设计的合理:通用性,适度的抽象(数据抽象,过程抽象),可扩展性: 3.效率问题:用好的.合适的算法(前端程序员要把自己当 ...
随机推荐
- 在CentOS7中安装.Net Core2.0 SDK
1.sudo yum install libunwind libicu(安装libicu依赖) 2.curl -sSL -o dotnet.tar.gz https://go.microsoft.co ...
- 使用git提交到github,每次都要输入用户名和密码的解决方法
使用git提交文件到github,每次都要输入用户名和密码,操作起来很麻烦,以下方法可解决,记录以下. 原因:在clone 项目的时候,使用了 https方式,而不是ssh方式. 默认clone 方式 ...
- 20165230 预备作业3 Linux安装及学习
20165230 预备作业3 Linux安装及学习 安装Linux操作系统 通过学习实践基于VirtualBox虚拟机安装Ubuntu图文教程,开始了虚拟机的安装,根据教程按着步骤一步一步的完成. 遇 ...
- 1-5 hibernate学习笔记(11-14章)
一,概念详解 1.持久化persistent 是指将内存中的数据保存到磁盘.数据库等存储设备中. 2.持久化对象:已经储存到磁盘或者数据库中的业务对象. 3.在java中对对象的持久化有三种方法: 1 ...
- 笔记:Eclipse 安装 Hibernate Tools
在线安装,要求 Eclipse Neon 4.6 版本和Java 8,在 Help > Install New Software,在打开的窗体中的 Work with 中输入URL地址" ...
- new Date的兼容性问题
标准浏览器下正常,结果ie.老版本的IOS微信公众号不支持,搞不懂,原来有兼容性问题 //beginData格式为'yyyy-mm-dd' 1 var _date = new Date(Date.pa ...
- Matplotlib库的使用
*可通过dpi修改输出质量 plot函数 第一种方法会使图中所有的字体改变,而第二种方法只会改变中文字体,推荐使用第二种方法.
- ELK学习笔记(一)安装Elasticsearch、Kibana、Logstash和X-Pack
最近在学习ELK的时候踩了不少的坑,特此写个笔记记录下学习过程. 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因 ...
- 玩转log4j
我的目标是授人以渔,而不是授人以鱼,我相信你仔细看完这篇文章,玩转log4j不成问题 先来一个log4j最简单的例子 public class MyApp { static Logger logger ...
- Linux下安装配置jdk
步骤: 1.去官网下载jdk压缩包 网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151. ...