js回顾1
1、正则:
/^[0-9a-zZ-Z_]*&/ //匹配0到多个,+是1到多个,?0或多个,.任意值
/^[0-9a-zZ-Z_]{6,}&/ //精确到至少6位
\w查找单词字符
检测:test()
2、1.一次性判断:if(){ } else{ }
2.多次判断:if(){ }
if(){ }
if(){ }
if(){ }
3.成绩等级判断:
var a=99;
var b=Math.floor(a/10);
console.log("b:",b)
switch(b){
case 9:console.log("A"); break;
case 8:console.log("B") ; break;
case 7:console.log("C"); break;
case 6:console.log("D"); break;
default:console.log("不及格"); break;
}
3.循环:(1)do {
}while()
(2)while(){ i++}//i++在循环体内,循环体内的语句会影响i++
(3)for(i=0;i<=100;i++){ }//for中的i++是在循环体外,循环体内的语句不影响i++
continue;//结束本次循环,继续下一次
break;//跳出循环体
4、冒泡排序:n个数,会比较n-1轮,每一轮较上一次少一次比较
//冒泡排序(多重循环)
var arr1=[2,4,1,3,6,9,78,0];
for(var i=0;i<arr1.length-1;i++){
for(var j=0;j<arr1.length-1-i;j++){
if(arr1[j]>arr1[j+1]){
var tmp=arr1[j];
arr1[j]=arr1[j+1];
arr1[j+1]=tmp;
}
}
}
console.log(arr1);
5、数据类型
(1)var obj={a:100};
var fun1=function(obj){
obj.a++;
}
fun1(obj);//a=101 引用类型
(2)a=100;
var fun1=function(a){
a++;
}//原始类型
fun1()//a=100
(3)var obj={a:100};
var fun1=function(obj){
var obj={a:100};
obj.a++;
}
fun1(obj);//a=100
isNaN()判断是否为NaN
6、运算符
1、算数运算符:+ - * / %
2、比较运算符:> < >= <= == === !=
3、0==false;1==true;
2==true;(错误)
3、var b;
if(b){
}//b有值时
if(!b){
}//b没有值时
一般不推荐把null和undefi写出来
4、a++,++a,a+=b,a-=b
6、实例
//冒泡排序
var arr1=[2,4,1,3,6,9,78,0];
for(var i=0;i<arr1.length-1;i++){
for(var j=0;j<arr1.length-1-i;j++){
if(arr1[j]>arr1[j+1]){
var tmp=arr1[j];
arr1[j]=arr1[j+1];
arr1[j+1]=tmp;
}
}
}
console.log(arr1);
arr1.forEach(function(value){
console.log(value,i);
});
// var in方法
for(var k in arr1){
console.log(k,arr1[k]);
}
var obj={
name:"张飞",
sex:"男",
age:16
}
for(var m in obj){
console.log("var in方法",m,obj[m]);
}
//forEach方法
var arr2=[1,2,3,4,50];
var arr3=[];
arr2.forEach(function(value){
value=value*10;
console.log(value);
arr3.push(value);
})
console.log(arr3);
//map()方法 1,做循环 2、在循环的同时可以通过return返回新的数组当中
var arr4=arr2.map(function(value){
if(value>10)
{return value*10;}
else{
return value;
}
})
console.log(arr4);
// filter()方法:做过滤
var arr5=arr2.filter(function(value){
if(value>10)
{return value;}
})
console.log("arr5:",arr5);
js回顾1的更多相关文章
- js回顾
回顾 js 组成部分 ECMAScript BOM DOM 变量声明~~ var 变量名 = 初始化值: ...
- 前端学习(十四)js回顾和定时器(笔记)
回顾知识点: 作用域: 1.全局变量:在任何位置都可以使用的变量 2.局部变量:只能在函数内部使用的变量 3.闭包:子函数可以使用父函数的局部变量 -- ...
- js回顾(DOM中标签的CRUD,表格等)
01-DOM中的创建和添加标签 02-删除替换克隆标签 03-全选全不选反选 04-新闻字体 05-表格增删 06-动态生成表格 07-表格隔行变色 08-左到右右到左(将左边的标签移动到右边) 09 ...
- js 回顾知识总结一
1.js数据类型? 基本数据类型:String(字符串).boolean(布尔值).Number(数字).undefined(未定义).null(空) 引用数据类型:Object(对象).Array( ...
- js回顾2
1:事件流:一个事件发生时按一个方向传播 eg:a标签->html 冒泡:从里到外(一般的选择)-----IE只有冒泡 捕获:从外到里-----网景只有捕获(已经不存在了) 2.事件处理的两种种 ...
- js+dom开发第十六天
一.css常用标签及页面布局 1.常用标签 position(定位) z-index(定位多层顺序) background(背景) text-align(针对字符自动左右居中) margin(外边距) ...
- 实现一个类 RequireJS 的模块加载器 (二)
2017 新年好 ! 新年第一天对我来说真是悲伤 ,早上兴冲冲地爬起来背着书包跑去实验室,结果今天大家都休息 .回宿舍的时候发现书包湿了,原来盒子装的牛奶盖子松了,泼了一书包,电脑风扇口和USB口都进 ...
- Css、javascript、dom(二)
一.css常用标签及页面布局 1.常用标签 position(定位) z-index(定位多层顺序) background(背景) margin(外边距) padding(内边距) font-size ...
- 一文入门HTML5
1.HTML5 上节回顾:一文读懂ES6(附PY3对比) | 一文入门NodeJS 演示demo:https://github.com/lotapp/BaseCode/tree/master/java ...
随机推荐
- es6还欠完善的地方
const的可变性 const用于声明常量. 什么是常量,声明后的值不可更改. 对于值类型,比如string,number等等.const声明确实有效. const str = "strin ...
- yii2 renderPartial
在 views/news/_copyright.php 中插入以下代码: <div> This is text about copyright data for news items &l ...
- linux应用程序开发-进程通信(IPC)
IPC why: 1.数据传输 2.资源共享 目的: 3.通知事件 4.进程控制 发展: 1.UNIX进程间通信 2.基于SYStem V 3.POSIX 方式分类: 1.pipe(管道) FIFO( ...
- iOS tabBar双击事件
思路: 在tabBarController的代理方法 shouldSelectViewController 中, 通过判断tabBar选中的控制器是否是当前控制器 并 比对两次点击的时间间隔 来判断是 ...
- sql多表查询时怎么获取查到的字段
首先,多表查询不能用hql(貌似hql就是不支持多表查询,如果可以,希望看到的朋友给个例子) List list = systemService.findListbySql("SELECT ...
- $.unique()去重问题
var yearArray = new Array(2009, 2009, 2010, 2010, 2009, 2010);$.unique(yearArray); 返回 2009, 2010, 20 ...
- OneSQL助力永辉超市大卖特卖
数据库集群查询达到10w/s,更新操作5k/s,正常! 应用并发连接达到历史高峰4倍,正常! 业务平稳运行,正常! 永辉微店527大促,圆满成功!这标志着平民软件数据库工程师.accenture咨询实 ...
- ==与equals的区别
==比较两个对象在内存里是不是同一个对象,就是说在内存里的存储位置一致.两个String对象存储的值是一样的,但有可能在内存里存储在不同的地方 . ==比较的是引用而equals方法比较的是内容.pu ...
- mysql 5.7 忘记root密码解决方法
1.修改配置文件 vim /etc/my.cnf 在[mysqld]节点添加 skip-grant-tables 2.重启mysql 3.用空密码进入 mysql -uroot 执行 update m ...
- android模拟器genymotion安装virtualbox不能为虚拟电脑启动一个新任务
错误详情如下: Unable to load R3 module C:\Program Files\Oracle\VirtualBox/VBoxDD.DLL (VBoxDD): GetLastErro ...