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之前版本的依 ...
随机推荐
- 智能车学习(二十二)——浅谈速度控制
一.经典PID控制 使用遇限反向PID会比较适合有加减速的车子,使用变速积分适合跑匀速的车子.然后这种方法的条件下,一定要尽可能缩短控制周期.. 二.PID加棒棒控制 针对 ...
- 汇编学习(六)——代码转换程序
(一)逻辑运算指令 一.双操作数逻辑运算指令 1.指令格式: AND dst,src ; "与"运算, OR dst,src ; "或"运算 XOR dst,s ...
- suse 不能远程登录
公司部分机器新装了suse企业版12,远程登录不成功,解决方法如下: 1.关闭防火墙 chkconfig --level SuSEfirewall2_init off 2.配置sshd 3.重启ssh ...
- 如何通过java代码对kylin进行cube build
通常是用于增量 代码如下: package com.dlht.kylinDemo; import java.io.BufferedReader; import java.io.FileNotFound ...
- 关于CDH中开发Spark
文章发自http://www.cnblogs.com/hark0623/p/4167363.html 转发请注明 注意:基于CDH进行Spark开发时,使用高版本的apache原生包即可:不需要使用C ...
- Java和数据库时间格式化格式
JAVA: yyyy-MM-dd HH-mm-ss(大小HH表示24小时制); SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd&q ...
- css3 总结01
前缀 chrome: -webkit- safari: -webkit- firefox: -moz- ie: -ms- opera: -o- 书写的时候应该先用有前缀的样式,再用无前缀的样式 颜色 ...
- Thymeleaf模板引擎使用
Thymeleaf模板引擎使用 什么是Thymeleaf Thymeleaf是一个Java库.它是一个XML / XHTML / HTML5模板引擎,能够在模板文件上应用一组转换,将程序产生的数据或者 ...
- 原生 js 写分页
欢迎留言或者加本人QQ172360937咨询 这段代码是用原生 js 写的一个分页的效果 <!doctype html> <html lang="en"> ...
- Codeforces 660C Hard Process(尺取法)
题目大概说给一个由01组成的序列,要求最多把k个0改成1使得连续的1的个数最多,输出一种方案. 和CF 676C相似. #include<cstdio> #include<algor ...