#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再学习笔记的更多相关文章

  1. JS数组学习笔记

    原文:JS数组学习笔记 最近在备课数组,发现很多ES5的方法平时很少用到.细节比较多,自己做了大量例子和整理,希望对大家了解JavaScript中的Array有所帮助. 概念 数组是值的有序集合.每个 ...

  2. JS&ES6学习笔记(持续更新)

    ES6学习笔记(2019.7.29) 目录 ES6学习笔记(2019.7.29) let和const let let 基本用法 let 不存在变量提升 暂时性死区 不允许重复声明 块级作用域 级作用域 ...

  3. 两万字Vue.js基础学习笔记

    Vue.js学习笔记 目录 Vue.js学习笔记 ES6语法 1.不一样的变量声明:const和let 2.模板字符串 3.箭头函数(Arrow Functions) 4. 函数的参数默认值 5.Sp ...

  4. 两万字Vue.js基础学习笔记(二)

    Vue.js学习笔记(二) 4.模块化开发 ES6模块化的导入和导出 我们使用export指令导出了模块对外提供的接口,下面我们就可以通过import命令来加载对应的这个模块了 首先,我们需要在HTM ...

  5. Knockout.js快速学习笔记

    原创纯手写快速学习笔记(对官方文档的二手理解),更推荐有时间的话读官方文档 框架简介(Knockout版本:3.4.1 ) Knockout(以下简称KO)是一个MVVM(Model-View-Vie ...

  6. handlebars.js基础学习笔记

    最近在帮学校做个课程网站,就有人推荐用jquery+ajax+handlebars做网站前端,刚接触发现挺高大上的,于是就把一些基础学习笔记记录下来啦. 1.引用文件: jquery.js文件下载:h ...

  7. Node.js API 学习笔记

    常用 API 学习笔记 url 函数 url.parse: 解析 url 地址 url.resolve: 向 url 地址添加或替换字段 url.format: 生成 url 地址 querystri ...

  8. Js replace() 学习笔记

    最近捣鼓着学习Js,发现replace()真的很有用,替换功能杠杠的棒. 接下来看看我遇到的问题: 有两个随机给出的字符串,字符串1'xxxxxx',字符串2'====T'(这两个用作示例,其他为随机 ...

  9. 《Pro Express.js》学习笔记——概述

    要学Node.js,先学Express.js. Express.js是Node.js官方推荐的基础框架. Express.js框架经过一系列的发展,已经到了4.x版本.新的版本解决了3.x之前版本的依 ...

随机推荐

  1. 【T_SQL】 基础 续+++

    十五.T-SQL 编程 1.变量 (1)局部变量                    A.局部变量必须以标记@作为前缀 ,如@age.                    B.局部变量的使用也是先 ...

  2. JDK BIO编程

    网络编程的基本模型是Client/Server模型,也就是两个进程之间进行相互通信,其中服务端提供位置信息(绑定的IP地址和监听端口),客户端通过连接操作向服务端监听的地址发起连接请求,通过三次握手建 ...

  3. Codeforces Round #375 (Div. 2) - C

    题目链接:http://codeforces.com/contest/723/problem/C 题意:给定长度为n的一个序列.还有一个m.现在可以改变序列的一些数.使得序列里面数字[1,m]出现次数 ...

  4. POJ 2002 统计正方形 HASH

    题目链接:http://poj.org/problem?id=2002 题意:给定n个点,问有多少种方法可以组成正方形. 思路:我们可以根据两个点求出对应正方形[有2个一个在两点左边,一个在两点右边] ...

  5. express-14 发送邮件

    简介 Node和Express都没有内置的邮件发送功能,所以必须使用第三方模块.推荐Andris Reinman的Nodemailer SMTP.MSA和MTA 发送邮件的通用语言是简单邮件传输协议( ...

  6. 一个java集合使用bug

    在使用java集合的时候有的时候集合是来自于一些第三方工具提供的从字符串或json 转出集合的对象有时是抽象类,这时的对象部分功能是未实现的,在使用相应操作的时侯 会引发bug. Exception  ...

  7. Windows下安装 使用coreseek

    1.安装 1.01:到官网下载 coreseek-3.2.14 1.01_1 原理 缓存服务器: 准备数据 来自数据库 配置连接  生成索引 开启服务 流程:用户-> web->sphin ...

  8. 原生 js 模拟 alert 弹窗

    复制头部的 js 代码到你的 js 文件的任何地方,调用Chef.alert方法传入相应的参数即可并没有什么功能,只是一个提示的作用,可能样式比 alert 的弹窗好看点,css是写在js里的,只要你 ...

  9. git merge 与 rebase 的区别

    http://gitbook.liuhui998.com/4_2.html merge rebase

  10. ArcGIS 点到直线的距离

    /****点到直线的距离*** * 过点(x1,y1)和点(x2,y2)的直线方程为:KX -Y + (x2y1 - x1y2)/(x2-x1) = 0 * 设直线斜率为K = (y2-y1)/(x2 ...