js再学习笔记
#js再学习笔记
##基本
1.js严格区分大小写
2.js末尾的分号可加,也可不加
3.六种数据类型(使用typeof来检验数据的类型) `typeof`
- undefined: `var name;` ------就是已定义未赋值或者未定义而使用**针对变量来说**,占据一个变量的位置而不使用。
- boolean-------布尔类型
- string: `var name="zhangsan"; var englishname='tom';` -----字符串类型,单引号,双引号没什么区别。
- number ----整形和浮点型。 js里边最大的数字`Number.MAX_VALUE`最小数字`Number.MIN_VALUE`,无限大`infinity`
- null ---是一个对象。可以当做占位符使用`var people=null;`
##运算
4.`==` :值比较 ; `===` :值和数据类型都比价
5.`+` :当两个参数是数字做加法运算。当两个参数有一个是字符串类型,做连接。
6.`&&`:js中的与运算,在js内部进行数据类型转换。最后的结果并不是布尔类型而是参与运算中参数 的一个值。 `1&&2`结果为true(其实是2); `0&&5`结果为false(其实是0,0已经决定结果,把右边给短路了) `""&&"hello"`结果为false(其实结果为""空字符串)
##流程
7.for循环:可以有四种写法 a.正规的; b、`var i=0;for(;i<3;i++)`;c.i++在里边的`var i=0;for(;i<4;){i++}`;d、`var i=0;for(;;){}`判断和i增加在里边
8.**breake**,跳出本层循环,就不执行本层后边的循环了。但是break 2这种跳出外边循环的语法是php的语法。js跳出外边的循环得设置标签。`<script>
bianjie:
for(i=0;i<3;i++){
console.log(i);for(j=100;j>90;j--){
console.log(j);
if(j==95){
break bianjie;
}
}
}
</script>`
9.continue :跳出本次循环,继续后边的循环,跳出外边的也是写标签。
##函数
1.函数,就是具有一定功能的代码的封装。
2.js函数如果在定义的时候没有参数`function talk(){ alert("hello");}` 但是`talk(liming,5)`调用了参数。可以根据arguments函数内部属性获得参数信息。arguments是个数组,也是对象,对象里边有数组的成分。
`var name=arguments[0]`name即使liming。 可以根据arguments.length判断参数的个数
3.return :a、返回具体信息; b、结束函数的执行;c,可以返回一个函数
`function a(){ var name="aa"; function b(){ } return a; }`当var c=a();其实就是b函数的引用。
4.全局变量与局部变量。在js中在任何地方,如果不使用var定义变量的话就是全局变量。在函数内部使用var定义的变量是局部变量。**全局变量的其实就是window的属性,使用firebug打开DOM查看即可。**
5.匿名函数自调用。----匿名函数直接声明并调用`(function(){ alert("hello");})();`以这种方式执行函数,函数内部的一切信息在函数执行完成之后会被销毁。匿名函数的另一种方式`var f1=function(){alert("ddd")}`
js再学习笔记的更多相关文章
- JS数组学习笔记
原文:JS数组学习笔记 最近在备课数组,发现很多ES5的方法平时很少用到.细节比较多,自己做了大量例子和整理,希望对大家了解JavaScript中的Array有所帮助. 概念 数组是值的有序集合.每个 ...
- JS&ES6学习笔记(持续更新)
ES6学习笔记(2019.7.29) 目录 ES6学习笔记(2019.7.29) let和const let let 基本用法 let 不存在变量提升 暂时性死区 不允许重复声明 块级作用域 级作用域 ...
- 两万字Vue.js基础学习笔记
Vue.js学习笔记 目录 Vue.js学习笔记 ES6语法 1.不一样的变量声明:const和let 2.模板字符串 3.箭头函数(Arrow Functions) 4. 函数的参数默认值 5.Sp ...
- 两万字Vue.js基础学习笔记(二)
Vue.js学习笔记(二) 4.模块化开发 ES6模块化的导入和导出 我们使用export指令导出了模块对外提供的接口,下面我们就可以通过import命令来加载对应的这个模块了 首先,我们需要在HTM ...
- Knockout.js快速学习笔记
原创纯手写快速学习笔记(对官方文档的二手理解),更推荐有时间的话读官方文档 框架简介(Knockout版本:3.4.1 ) Knockout(以下简称KO)是一个MVVM(Model-View-Vie ...
- handlebars.js基础学习笔记
最近在帮学校做个课程网站,就有人推荐用jquery+ajax+handlebars做网站前端,刚接触发现挺高大上的,于是就把一些基础学习笔记记录下来啦. 1.引用文件: jquery.js文件下载:h ...
- Node.js API 学习笔记
常用 API 学习笔记 url 函数 url.parse: 解析 url 地址 url.resolve: 向 url 地址添加或替换字段 url.format: 生成 url 地址 querystri ...
- Js replace() 学习笔记
最近捣鼓着学习Js,发现replace()真的很有用,替换功能杠杠的棒. 接下来看看我遇到的问题: 有两个随机给出的字符串,字符串1'xxxxxx',字符串2'====T'(这两个用作示例,其他为随机 ...
- 《Pro Express.js》学习笔记——概述
要学Node.js,先学Express.js. Express.js是Node.js官方推荐的基础框架. Express.js框架经过一系列的发展,已经到了4.x版本.新的版本解决了3.x之前版本的依 ...
随机推荐
- AS项目转到eclipse中方法
手工改,1.在eclipse 上新建一个空的项目;2.点击android studio 中的android 视图, a.替换as 中的AndroidManifest.xml -> ...
- WPD:Page Download Time Breakdown选项详解
WPD:Page Download Time Breakdown选项详解 “页面下载时间细分”图显示每个页面组件下载时间的细分,可以根据它确定在网页下载期间事务响应时间缓慢是由网络错误引起还是由服务器 ...
- js倒计时(可定义截止日期)
<div id="times_wrap" class="time_num"> 距离结束时间: <div class="time_w& ...
- TweenMax_API介绍
构造函数:TweenMax(target:Object, duration:Number, vars:Object) target:Object -- 需要缓动的对象 duration:Number ...
- 分享Kali Linux 2016.2第48周虚拟机
分享Kali Linux 2016.2第48周虚拟机该虚拟机使用Kali Linux 2016.2第48周的64位镜像安装而成.基本配置如下:(1)该系统默认设置单CPU双核,内存为2GB,硬盘为50 ...
- 06_Java多线程、线程间通信
1. 线程的概念 1.1多进程与多线程 进程:一个正在执行的程序.每个进程执行都有一个执行顺序,该顺序是一个执行路径,或叫一个控制单元. 一个进程至少有一个线程. 线程:就是进程中的一个独立 ...
- 不同java 版本的新功能
Java 5 泛型 自动装箱/拆箱 增强的for 类型安全的枚举 可变参数 静态导入 Annotation Concurrent Package Java 6 Web Service 支持Annota ...
- [转载] Spring MVC - 处理器拦截器
5.1.处理器拦截器简介 Spring Web MVC的处理器拦截器(如无特殊说明,下文所说的拦截器即处理器拦截器)类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理. ...
- 解决ADT升级报错
方法一: 将https://dl-ssl.google.com/android/eclipse/ 改成 http://dl-ssl.google.com/android/eclipse/: 方法二: ...
- HDU5834 Magic boy Bi Luo with his excited tree(树形DP)
题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=5834 Description Bi Luo is a magic boy, he also ...