JavaScript之数据类型
注释
单行 // 多行 /* */
引用方式
<script> // 在这里写你的JS代码 </script> <script src="myscript.js"></script> // 引入额外的JS文件
数据类型
Number
JavaScript不区分整数和浮点数,都用Number表示,NaN表示不是数字,infinity表示无限大,parseInt(..)将某值转换成数字,不成功则NaN,parseFloat(..)转换成浮点数
四则运算中的取余用%。
布尔值
&&运算是与运算:
||运算是或运算:
!是非运算:
JavaScript允许对任意数据类型做比较:
false == 0 // true false === 0 //false
JavaScript在设计时,有两种比较运算符:
第一种是==比较,它会自动转换数据类型再比较;
第二种是===比较,它不会自动转换数据类型,如果数据类型不一致,返回false,如果一致,再比较。
不要使用==比较,始终坚持使用===比较。
NaN与任何值都不相等包括自己 唯一能判断的是isNaN函数通过isNaN(NaN)。
因为计算机无法精确表示无限循环小数 所以浮点数最好不要比较。
null和undefined
null表示空与0和字符串‘’不一样,0是一个数值,''表示长度为0的字符串,而null表示“空”。
undefined表示值未定义 仅在判断函数参数是否传递的情况下有用。
数组
数组是一组按顺序排列的集合,集合的每个值称为元素。数组可以包括任意数据类型;
Array1 = [1, 2, 3.14, 'Hello', null, true];
另一种创建数组的方法是通过Array()函数实现:
new Array(1, 2, 3); // 数组[1, 2, 3]
可以用索引访问 注意通过-1倒序访问得到的是undefined
Array.length 数组的大小 Array.push() 尾部添加元素 Array.pop() 删除并返回数组的最后一个元素 Array.unshift() 在数组头部插入一个元素 Array.shift( ) 在数组头部移除一个元素 Array.slice( ) 切片 Array.reverse( ) 反转 Array.join( ) 将数组元素连接起来以构建一个字符串 Array.concat( ) 拼接 Array.sort( ) 排序 Array 对数组的内部支持 Array.splice( start, deleteCount, value, ...) 插入、删除或替换数组的元素 obj.splice(n,0,val) 指定位置插入元素 obj.splice(n,1,val) 指定位置替换元素 obj.splice(n,1) 指定位置删除元素 Array.toLocaleString( ) 把数组转换成局部字符串 Array.toString( ) 将数组转换成一个字符串
对象
JavaScript的对象是一组由键-值组成的无序集合,例如:
var person = { name: 'Bob', age: 20, tags: ['js', 'web', 'mobile'], city: 'Beijing', hasCar: true, zipcode: null };
对象的键必须是字符串,值可以是任意数据类型。每个键又称为对象的属性,
要获取一个对象的属性,我们用对象点属性的方式。
变量
变量名是大小写英文、数字、$和_的组合,不能用数字开头。
使用var声明的函数体内变量不是全局变量,它的范围被限制在函数,同名变量在不同的函数体内互不冲突。
字符串
字符串用' '或" "括起来表示
如果字符串内部既包含'又包含"可以用转义字符\来标识,比如:
'I\'m \"OK\"!';
表示的内容是:I'm "ok"!
转义字符\可以转义很多字符,比如\n表示换行,\\表示的字符就是\。
ASCII字符可以用\x##形式的十六进制表示,例如:
'\x41'; // 等同于 'A'
还可以用\u###表示一个Unicode字符:
'\u4e2d\u6587'; // 完全等同于 '中文'
字符串连接可以用+号或者用${变量名}替换:
var name = '小明'; var age = 20; var message = `你好, ${name}, 你今年${age}岁了!`;
字符串方法:
#.length 长度 同样也可以通过索引查看某个位置的字符
#.toUpperCase() 变成大写
#.toLowerCase() 变成小写
#.indexOf() 搜索字符出现位置
#.substring() 返回索引区间字符
#. charAt() 获取索引字符
String.length 字符串的长度 String.trim() 移除空白 String.trimLeft() 移除左侧空白 String.trimRight() 移除右侧空白 String.concat(value, ...) 拼接 String.slice(start, end) 切片 String.split( ) 分割 String.search( ) 从头开始匹配,返回匹配成功的第一个位置(g无效) String.match( ) 全局搜索,如果正则中有g表示找到全部,否则只找到第一个 String.replace( ) 替换,正则中有g则替换所有,否则只替换第一个匹配项; $数字:匹配的第n个组内容; $&:当前匹配的内容; $`:位于匹配子串左侧的文本; $':位于匹配子串右侧的文本 $$:直接量$符号 String.charAt( ) 返回字符串中的第n个字符 String.charCodeAt( ) 返回字符串中的第n个字符的代码 String.fromCharCode( ) 从字符编码创建—个字符串 String.indexOf( ) 查找子字符串位置 String.lastIndexOf( ) 查找子字符串位置 String.localeCompare( ) 用本地特定的顺序来比较两个字符串 String.substr( ) 抽取一个子串 String.substring( ) 返回字符串的一个子串 String.toLocaleLowerCase( ) 把字符串转换小写(针对地区,在不知道程序在哪个语言环境中运行时用) String.toLocaleUpperCase( ) 将字符串转换成大写(针对地区) String.toLowerCase( ) 小写 String.toUpperCase( ) 大写 String.toString( ) 返回原始字符串值 String.toString() 返回原始字符串值 String.valueOf( ) 返回原始字符串值

浙公网安备 33010602011771号