一、数组

数组按照顺序来存储数据,都是有序地排序起来的。
创建数组
//用逗号分开每一条储存的数据;
var arr = [5,2,0,1,3,1,4];访问数组里面的内容
console.log(arr)//访问原数组//arr[index]
console.log(arr[0]) //单独访问数组的第一项 5console.log(arr.length) //数组有自己的长度

二、数组存值

JS中的数组不管什么类型的数据都可以存进去
var arr = [1,'红领巾',function(){alert('红领巾');return '泪水',['帅','哥'],true]
console.log(arr)//查看数组
console.log(arr[2]()]//执行数组里面第三项的函数

三、二维数组,json对象

  • 二维数组:
var arr = [1,'红领巾',function(){alert('红领巾');return '泪水',['帅','哥'],true];
//找到数组里面帅哥的数组的哥字
arr[3][1] //0开始找到数组下标的3 找到这个数组['帅','哥']加上[1] 找到哥
  • json对象:
对象用来储存具体的数据 以键值形式成对存在:
 var json = {//键 :值name:'小青',age : 18,//可以用数字但是一般很少用sex:'girl',love:'猫',home:true};console.log(json.name)//小青取值obj.name(对应的键)    如(name)

四、es5的数据类型

  • number 数字:
var num = 1;
  • string 字符串: 所有被引号引起来的都是字符串;
var str = '1';
  • boolean 布尔类型:
var bol= false;    //true or false
  • undefined 未定义 :
var a;
console.log( a );     //未定义;
由于它本身没有给值,默认会被赋值。系统默认会赋值为undefined;
  • function 函数:
var b = function{};
console.log( b );  //typeof 返回 function ;
  • null 空 : 获取不到对象,所以为空。
<div id='boxOne'>
document.getElementById('box');   //有时候写的是boxOne,但拿的时候拿的是box;取不到值,所以为空。
null是一种独立的数据类型
console.log( a );
console.log( typeof a ); //object;
//检测值的时候返回object;
  • object 对象: (比较复杂的数据类型)
var a = []; //按照顺序来存储数据;
console.log( typeof a );//object
console.log( a.length ); //长度为零,表示里面没有内容。var b = {};
console.log( typeof b ); //object
​console.log( b.length );// json对象没有长度所以为undefined
​
//代表: [] 、{}     按照顺序来存储数据;
​

四、比较符

 <  ————  小于 >  ————  大于
==  ————  等于
<=  ————  小于等于
>=  ————  大于等于
!=  ————  不等于
=== ————  全等,除了值的判断,还会进行unicode 编码的对比
!== ————  不全等
​
//(注意:一个 = 的时候为赋值;)
比较符返回的值,通常有两种结果,要么真,要么假! true / false !
*隐性类型转换
var num = 8;      // number
var str = '8';    // string
console.log( num == str ); //true
​
//两个等号 ,会进行隐性类型转换(隐式); 可以转换为同一类;
​
console.log( a === b );  //false
//三个等号 ,不会进行隐性的类型转换;  会判断左边跟右边的数据类型是否一样,如不一样,直接返回错误。
​
//在项目中如果不使用三个等号有时候业务会出现问题。
​
//会进行数据类型转换== >=<=!=
​
//不会进行数据类型转换    ===   !==   //尽量不要使用两个等于,因为会进行数据类型的转换,在判断时候会出现错误的情况。比如在确定num1和num2类型是否相等的情况。

六、判断

  • if判断

if进行判断根据情况不同选择不同的分支:
if(条件判断){code//条件满足时执行的代码
}else{code//条件不满足时执行的代码
}
var N = null;
var n;
if( typeof N === typeof n ){console.log('yes')
}else{console.log('no')
}--> typeof N = object ;--> typeof n = undefined;
只走真的判断不走假的判断
if( 条件判断 ){code//满足条件时执行的代码
}
不写不满足是执行的代码就不会走假判断啦
var a = 1;
var b = 1;
if(a === b){console.log('yes')
}
  • 多层判断

if(条件判断){code//满足第一个判断的条件走进这里
}else if(条件){code//不满足第一个判断条件但是又满足现在这个判断条件的走进这里
}else{code//以上都不满足走进这里 也可以不写 什么都不执行
}
var a = 10if ( a > 1 ){console.log('朋友')}else if( a < 1 ){console.log('小青')}else{console.log('我的')}
  • switch判断

当if的判断条件是一个变量来跟其它的数据做比较的时候(全等于比较时),if可以改写为switch。

if的变种写法;
优点:相比if判断,可读性更强;
但是前提必须在全等于的情况下进行判断。
switch( num1 ){case 1: //当num1 === 1 的时候执行下面代码打印出 1 console.log( 1 );break;case 2: //当num1 === 2 的时候打印出 2 console.log( 2 );break;case 3:console.log( 3 );break;case 4:console.log(4);break;default: //默认值 都是写在最后一个的。最好把break写上。console.log( '都不等于' );break;
}
如果不写break,代码会从头读到尾。默认情况也会执行。
  • 三目运算

有一种的情况:只有一个真的语句与一个假语句的时候,可以改写为三目运算
//判断写法:
判断条件是否为真 如果是走这里 :如果不走这里;

通常的if
var num1 = 123;
if( typeof num1 === 'number' ){console.log('数据类型是number!');
}else{console.log('非数字!');
}
​
三目

根据 判断条件是否为真 如果是走这里 :如果不走这里;

var num1 = 123;
typeof num1 === 'number'?alert('数据类型是number!'):alert('非数字!');
  • 判断的特殊情况

if条件判断中,返回的值为布尔值;
在JS中,有六种情况可以被转为false.

 ''    空字符串0     数字0null   空
undefined 未定义NAN    不是一个数字false  以上六种为falseif( '' ){console.log('真')
}else{console.log('假')
]
//注意: 空格字符也是一个字符,也是一个具体存在的字符。
//比如: ' ' , 'false'.
​

JS笔记 (四)数组,json对象,数据类型 ,if 判断,swich 判断,三目运算 判断相关推荐

  1. Java码农进阶之路~基本数据类型运算符流程控制-分支三目

    基本数据类型 首先先说下字节:字节(byte)是计算机信息技术用于计量存储容量的一种计量单位 通常情况下一字节由8个二进制位表示 0000 0000; 一个字节的取值范围为-128~127. 大家有兴 ...

  2. JS总结:数组 字符串 对象

    JS总结:数组 字符串 对象 JS中的数据分类: 1)基本数据类型  数据存储在栈区 number, string, boolean, und, null 2)引用数据类型  数据存储在堆区(引用地址 ...

  3. js循环遍历数组(对象)

    js循环遍历数组(对象) 1,for循环 对于循环应该是最常用的一种遍历方式了,通常用来遍历数组结构. let arr = ['a','b','c']; for (let i=0; i<arr. ...

  4. js reduce 累加数组里对象某个属性的和 NaN

    js reduce 累加数组里对象某个属性的和 NaN var temp = [ { "y": 32 }, { "y": 60 }, { "y&quo ...

  5. java和js中遍历数组和对象的总结

    java和js中遍历数组和对象的总结 在这儿写遍历数组和对象,权当复习和总结 1.java中数组的三种初始化方法 ①静态初始化 [java] view plaincopy 1. int[] arr = ...

  6. js字符串转与json对象类型转换

    js字符串转与json对象类型转换 js字符串转化成json对象,使用JSON.parse()需要注意的地方 1.使用方法 JSON.parse(text[, reviver]) 参数说明: text ...

  7. js中如何把 json对象转换成 数组

    // var data2 = JSON.parse(data); // JSON.parse() 把 json字符串 转化成 json 对象 // var a = JSON.stringify(dat ...

  8. JS学习笔记 (四) 数组进阶

    1.基本知识 1.数组是值的有序集合.每个值叫做一个元素,而每个元素在数组中的位置称为索引,以数字表示,以0开始. 2.数组是无类型的.数组元素可以是任意类型,并且同一个数组中的不同元素也可能有不同的 ...

  9. js实现字符串转json对象的四种方法

    1. javascript函数eval() 语法: var obj = eval ("(" + txt + ")"); //必须把文本包围在括号中,这样才能避免 ...

最新文章

  1. linux kill命令
  2. SQL Server中灾难时备份结尾日志(Tail of log)的两种方法
  3. Android数据填充器LayoutInflater
  4. C语言 —— 整型(int)类型数据,做函数的参数,传值与传地址
  5. 【Android 应用开发】Google 官方 EasyPermissions 权限申请库 ( 权限申请原理对话框操作回调接口 | 永久拒绝权限后引导设用户置权限 )
  6. c语言 系统命令,c语言如何调用系统命令
  7. 一、SMARTY安装于配置文件
  8. phpcms 调用多级栏目和多级栏目下的文章列表
  9. python tab键自动补全_设置python中TAB键自动补全方法
  10. qgraphicsview鼠标移动图片_交互式QGraphicsView(平移/缩放/旋转)-阿里云开发者社区...
  11. 【图像增强】python图像数据增强
  12. book mac pro怎么重装系统_苹果13英寸新MacBook Pro怎么重装win7系统
  13. 江苏工勤计算机高级工职称,事业单位专业技术职称与工勤岗高级工的区别
  14. 学计算机有哪些推荐书籍?
  15. 安卓开发就等同于Java编程么?不懂的进来看看吧
  16. 中国航天科工发布“天玥”系列移动计算产品
  17. 基于SSM的小区缴费系统
  18. 虚拟机ubuntu访问PC文件
  19. 《关于UDEC7.0学习阶段心得|CSDN创作打卡》
  20. BZOJ 1941: [Sdoi2010]Hide and Seek KDtree + 估价函数

热门文章

  1. 服务器系统盘清理工具,服务器内存清理工具
  2. 数据库原理 数据库镜像
  3. pygame 实现 flappybird 并打包成 exe 运行文件
  4. ShareSDK 安装教程
  5. ibm tivoli_Tivoli目录服务器
  6. 3D 定制 女仆2/ CM 3D2 制作精美动画必备软件下载
  7. python完整框架爬取浙江省的职高
  8. 呼叫中心管理系统的描述
  9. k8s的标签和标签选择器
  10. 由MessageBox透视Win32 API的调用