所有语言的基本数据类型就是那么几种,因为之前一直从事移动端,在学习js的过程中,总结一下js的基本类型及用法。
JavaScript 数据类型:字符串、数字、布尔,对象、Null、Undefined
1.String(字符串): 字符串可以是引号中的任意文本。您可以使用单引号或双引号.
var string1 = '123abcdefgadf' var string2 ="hello"
(1).计算字符串长度:string1.length = 10
(2).字符串中某一个指定的字符首次出现的位置:string1.indexOf('a') = 3
(3).把两个字符串链接起来:string1.concat(string2) = '123abcdefgabdfhello' 或 string1+string2 = '123abcdefgadfhello'
(4).字符串中的替换:string1.replace(/ab/,'hh') = '123hhcdefghhdfhello'
(5).字符串的某个部分:string1.slice(4) = 'hcdefghhdfhello'
(6).字符串分割成字符串数组:string1.split('a') = ['123','bcdefg','df']
(7).两个指定下标之间的字符:substring(2,4) = '3a'
注:与 slice() substring() 不接受负的参数
(8).toLowerCase() 方法用于把字符串转换为小写。
(9).toUpperCase() 方法用于把字符串转换为大写。
(10).toString() 方法返回字符串,(非字符串对象转化为字符串)
//字符串非空判断
function isEmpty(obj){
if(typeof obj == "undefined" || obj == null || obj == ""){
return true;
}else{
return false;
}
}
2.Number类型(数字)
(1).NaN:即非数值(Not a Number)。任何涉及NaN的操作都会返回NaN,NaN与任何值都不相等
//判断是否为数字
function isNumber(number){
if(!isNaN(number)){
return true;
}
else{
return false;
}
}
(2). 数值转换:
var num1=Number(true); //1
var num2=Number(1.0); //1
var num3=Number(""); //0
var num4;
Number(num4); //undefined
var num5=Number(null); //0
var num6=Number("00123abc"); //NaN
var num7=Number("00123"); //123,前面0被自动忽略
var num1=parseInt("4yf67"); //4
var num1= parseFloat("4yf67");//4
var num2=parseInt("fda123"); //NaN
var num3=parseInt(""); //NaN
var num4=parseInt("22.5"); //22
var num4= parseFloat("22.5"); //22.5
var num5=parseInt(0230); //152(八进制数),前面0不被忽略
var num5=parseFloat("0230")//230 ,0会自动会略
var num6=parseInt(012212);//5258(自动转化为二进制)
(3).Boolean(布尔)
Boolean类型有两个字面值:true和false。true不一定等于1,false不一定等于0。只有Number(true)Number(false)才是1或0,注意的是true和false是区分大小写的。
(4).Array(数组)
var list = ['a','b','c']
var list2 = ['d','e']
(1).数组中元素的数目:list.length = 3
(2).在一个数组中添加另一个数组中的元素:list.concat(list2) = ['a','b','c','d','e']
(3).数组中的元素组合字符串:join()
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr.join(".")
输出:George.John.Thomas
(4).删除并返回数组的最后一个元素pop()
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr)
document.write("<br />")
document.write(arr.pop())
document.write("<br />")
document.write(arr)
</script>
输出:George,John,Thomas
Thomas
George,John
(5)数组的末尾添加一个或多个元素push()
list.push('x') = ['a','b','c','x']
(6).slice() 方法可从已有的数组中返回选定的元素。(和字符串用法类似)
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr.slice(2,4) + "<br />")
输出:George,John,Thomas,James,Adrew,Martin
(7) .sort() 方法用于对数组的元素进行排序,是按照字符编码的顺序进行排序.
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr.sort())
输出:Adrew,George,James,John,Martin,Thomas
(8).splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目
list.splice(2,1) = ['a','b']
5.Undefined类型
对未初始化和未声明的变量执行typeof操作符都会返回undefined
6.Null类型:null值表示一个空指针对象
注:没有必要把一个变量的值初始化为undefined,但对于意在保存对象的变量则应明确的初始化为null值
typeof操作符:用于检测给定变量的数据类型,对一个值试用typeof操作符可能返回下列某个字符串: ♦ “undefined”——表示值未定义; ♦ “boolean”——表示值是布尔值 ;♦ “string”——表示值是字符; ♦ “number”——表示值是数值; ♦ “object”——表示值是对象或null;♦“function”——表示值是函数;
推荐阅读