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之前版本的依 ...
随机推荐
- 使用 json_in_java
// */ // ]]> java_in_json Table of Contents 1. Java 使用 Json 1.1. 下载地址: 1.2. 构造 json 字符串 1.3. 解析 j ...
- java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory 解决方案
缺少 commons-logging.jar
- hdu 1029 Ignatius ans the Princess IV
Ignatius and the Princess IV Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32767 K ( ...
- hdu 2669 Romantic
Romantic Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Sta ...
- SpringJDBC解析2-execute方法
大家都使用过JDBCTEMPLATE的execute方法,execute作为数据库操作的核心入口,将大多数数据库操作相同的步骤统一封装,而将个性化的操作使用参数PreparedStatementCal ...
- DSP using MATLAB 示例Example3.1 3.2 3.3
上代码: w = [0:1:500]*pi/500; % [0,pi] axis divided into 501 points. X = exp(j*w) ./ (exp(j*w) - 0.5*on ...
- python 线程之 threading(一)
threading:基于对象和类的较高层面上的接口,threading模块在内部使用_thread模块来实现线程的对象以及常用的同步化工具的功能. 使用定制类的方式继承 threading.Threa ...
- Swift3.0语言教程使用指针创建和初始化字符串
Swift3.0语言教程使用指针创建和初始化字符串 Swift3.0语言教程使用指针创建和初始化字符串苹果的Swift团队花了不少功夫来支持C的一些基础特性.C语言中为我们提供了指针,Swift也不例 ...
- [xsd学习]复合元素
对于xsd,复合元素的定义有两种方式: 一.在元素内部直接声明,此种方法只能此元素使用 <xs:element name="employee"> <xs:comp ...
- ajax无刷新异步传输
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...