在上一篇学会引用和定义变量后,开始学习异或复习简单的语法
目录
1、运算
-
运算的优先级
()
++、--
* / %
> = <
==、 !==
先 && 后 ||
=
- 浮点数精度问题
如 0.07*100=7.00000000000000001
尽量将浮点数避开
- !== 或=== 要求值和类型都一致
== 判等号 会转型
- 逻辑短路运算
当表达式左边可以确定结果时,直接返回左边;
console.log(123&&345)//返回345
console.log(0&&123)//返回0
2、流程控制
即控制代码按照什么结构顺序来执行
主要三种,顺序、分支(if、switch)、循环
switch(){
case value1:执行语句1;
break;
default:
执行最后语句;
}
注意switch里面的值需与case里面的全等才行。
三元表达式
条件表达式?;表达式1:表达式2;
false 表达式2、ture 表达式1
熟练可常用于简洁语句
循环与c语言一样
for while do..while
注意 continue用于跳出本次循环,继续下次循环;
break用于跳出整个循环;
3、数组
创建数组
- var 数组名 = new Array();
- var 数组名=[]; //常用;
数组中可以放任何数据类型;
判断是否为数组(两个方法)
- var arr = [];
console.log(arr instanceof Array);
- Array.isArray(arr)
数组名.length,即为数组长度,动态检测数组的元素个数
修改数组长度 a.length=10;(多出来的为空)修改索引号以进行增加数组元素;
筛选数组,例如:
var a=[1,2,3,87,45,33,22,67];
var newb=[];
for (var i = 0; i < a.length ; i++)
{ if (a[i]>10)
newb[newb.length] = a[i];
}
console.log(newb);
添加数组 .push
(1)追加新的元素
var arr = [1,2,3];
arr.push(4);
console.log(arr);//输出1,2,3,4
console.log(arr.push(5));//push完毕后返回的是新数组的长度
(2)在开头添加
arr.unshift('pink');
删除数组元素
(1) 从后面开始删除
arr.pop();
console.log(arr.pop());//返回的是删除的元素
(2)shift() ; //删除第一个元素
翻转数组
(直接调用)
arr.reverse();
排序(冒泡排序)
arr.sort();//基数排序超过两位数就不准确
下面解决:
var arr1 = [12,44,56,22,98]
arr.sort(function ( a , b ) {
return a - b ;//升序,b-a降序
});
console.log(arr1);
//记住就行
获取数组元素索引 indexOf
var arr = [1,2,'pink',3];
console.log(arr.indexOf('pink'));//只返回第一个满足的索引号,找不到返回-1
console.log(arr.lastIndexOf(3)); //返回数组中最后一个满足的索引号
数组去重:
遍历旧数组,拿旧数组的元素查询新数组,没出现过就push。
function unique(arr) {
var newArr = [];
for ( var i = 0 ; i < arr.length ; i++) {
if (newArr.indexOf(arr[i] )=== -1)
newArr.push(arr[i]);
}
return newArr;
}
var demo = unique(['1','a','b','c','d','a','b','c'])
console.log(demo);
数组转化为字符串
var arr = [1, 2, 2];
console.log(arr.toString()); //1,2,3
var arr1 = ['green', 'blue', 'pink'];
//分隔符join
console.log(arr1.join());
console.log(arr1.join('-')); //即各个数之间加-
会输出:
1,2,2
index.html:12 green,blue,pink
index.html:13 green-blue-pink
连接数组
concat()返回一个数组,不影响原数组
var arr = [1, 2, 2];
var arr1 = [2,3,4];
var newarr = arr.concat(arr1);
console.log(newarr);
也可连接字符串
数组截取 slice( ,)
slice()数组截取slice(begin ,end)返回被截取的新数组
splice()删除splice(第几个开始,要删几个)返回被删除的新数组,会影响原数组
两个目的基本一致
祝你学习快乐!