JavaScript数据类型详解
在对js的数据类型有一定的了解之后,我们还有一些对各类数据类型有一些要注意的点。
对于不知道是什么类型的数据,我们可以利用关键字 typeof
查看数据原型可以利用.__proto__ 查看最后一个属性 __proto__可以得知数据类型地原型
一、字符串
var str='123456'
方法 | 描述 |
---|---|
str.length | 获得数组长度。 |
str.replace(‘被替换字符’,‘替换上的字符’) | 替换字符串中的某个字符,该方法执行后不改变原字符串。 |
str.slice(num1,num2) | 切割,num1为开始的字符的下标,num2为切割的字符串的长度(切割后的字符串包含下标为num1的字符),该方法执行后不改变原字符串。 |
str.split | 分割,通过字符串中的某个字符,把字符串分割为数组。 |
str.__proto__ | 查看数组原型 |
二、数字
整形和小数在js中都归类为数字类型,可直接用关键字var
定义。
对于取出字符串中的数字,可以使用parseInt()
和parseFloat()
函数。
parseInt()
函数可解析一个字符串,并返回一个整数。
如果 string 以 “0x” 开头,parseInt() 会把 string 的其余部分解析为十六进制的整数。如果 string 以 0 开头,那么 ECMAScript v3 允许 parseInt() 的一个实现把其后的字符解析为八进制或十六进制的数字。如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数。
parseFloat()
函数可解析一个字符串,并返回一个浮点数。
该函数指定字符串中的首个字符是否是数字。如果是,则对字符串进行解析,直到到达数字的末端为止,然后以数字返回该数字,而不是作为字符串。
parseFloat 将它的字符串参数解析成为浮点数并返回。如果在解析过程中遇到了正负号(+ 或 -)、数字 (0-9)、小数点,或者科学记数法中的指数(e 或 E)以外的字符,则它会忽略该字符以及之后的所有字符,返回当前已经解析到的浮点数。同时参数字符串首位的空白符会被忽略。
如果参数字符串的第一个字符不能被解析成为数字,则 parseFloat 返回 NaN。
三、函数
函数有两种命名方法
方法一:匿名函数
var fun=function(){
}
fun1(传入参数)
方法二:
function 函数名字(){
}
函数名字(传入参数)
需要注意的是,函数中,在return
关键字之后的语句不会被执行。
在函数内我们可以使用arguments,他存储了此函数的所有参数,比如console.log(arguments)
而且关键字不能用作参数名来使用。
关于函数我们一个比较常用的用法,构造器。在这里我们可以简单将构造器理解为用于生成对象,实例化对象的。不过其本质还是函数。
构造一个对象
var makeObj=function(num1,num2,str){
this.num1=num1,
this.num2=num2,
this.str=str
}
使用构造器
var obj=new makeObj(1,2,'123')
四、对象
// 定义对象
var obj={
key: value,
fun:function(){
console.log('执行函数fun')
}
}
对象中的内容一般以键值对的形式出现。前面中的key
就是’键’,value
就是’值’。
注意,'值’必须要是属于js的数据类型。
对象查看某一项除了点语法之外也可以利用方括号[ ],只是方括号内传入的不是下标,而是字符串格式的键名。