JavaScript全局预定义变量和函数解释

arguments //
Array //数组
Boolean //布尔类型
Date //数据
decodeURI(URIstring) //URIstring必需,一个字符串,含有要解码的URI组或其他要解码的文本;返回值:URIstring的副本,其中的十六进制转义序列将被它们表示的字符替换.
decodeURIComponent(URIstring) //URIstring必需,一个字符串,含有解码的URI组件或其他要解码的文本;返回值:URIstring的副本,其中的十六进制转义序列将被它们表示的字符替换.

encodeURI //该函数对传入字符串中的所有非(基本字符、Mark字符和保留字符)进行转义编码(escaping)。所有的需要转义的字符都按照UTF-8编码转化成为一个、两个或者三个字节的十六进制转义字符(%xx)。例如,字符空格" "转换成为"%20"。在这种编码模式下面,需要编码的ASCII字符用一个字节转义字符代替,在\u0080和\u007ff之间的字符用两个字节转义字符代替,其他16为Unicode字符用三个字节转义字符代替
encodeURIComponent //该函数处理方式和encodeURI只有一个不同点,那就是对于保留字符同样做转义编码。例如,字符":"被转义字符"%3A"代替
encodeURI和encodeURIComponent区别:之所以有上面两个不同的函数,是因为我们在写JS代码的时候对URI进行两种不同的编码处理需求。encodeURI可以用来对完整的URI字符串进行编码处理。而encodeURIComponent可以对URI中一个部分进行编码,从而让这一部分可以包含一些URI保留字符
Error //错误
eval // 重新运算求出参数的内容
EvalError //重新运算得出错误内容
Function //函数

Infinity //无穷大
isFinite //测试数值是否为有限数 ;若是有限数则为真
isNaN //就是判断是否为一个数字。在检测用户输入和参数检测时很有用
JSON //基于JavaScript语言的轻量级的数据交换格式(JavaScript Object Notiation)
Math //指的是在数学方面常用的的东西.比如求平方,求什么的.跟document没什么差别;math的属性有:E,LN10,LN2,LOG10E,LOG2E,PI,SQRT2......基本方法有:abs();三角与反三角函数(如sin(),asin()),sqrt(),log(),max(),min(),exo();ceil(),floor(),random()()等
NaN //NaN 属性用于引用特殊的非数字值。法使用 for/in 循环来枚举 NaN 属性,也不能用 delete 运算符来删除它。NaN 不是常量,可以把它设置为其他值。使用 isNaN() 来判断一个值是否是数字。原因是 NaN 与所有值都不相等,包括它自己(NaN本身是一个数字类型,却代表着特殊的非数字值)

Number //数字
Object //对象(Object)是属性(property)的集合。
parseFloat //函数可解析一个字符串,并返回一个浮点数该函数指定字符串中的首个字符是否是数字。如果是,则对字符串进行解析,直到到达数字的末端为止,然后以数字返回该数字,而不是作为字

符串。语法parseFloat(string)
parseInt //函数可解析一个字符串,与上面parseFloat同理。
RangeError //当 num 太小或太大时抛出异常 RangeError。0 ~ 20 之间的值不会引发该异常。有些实现支持更大范围或更小范围内的值。
ReferenceError //引用错误

RegExp //逻辑运算符
String //String 对象用于处理文本(字符串)。创建语法:new String(s);String(s);参数 s 是要存储在 String 对象中或转换成原始字符串的值。返回值:当 String() 和运算符 new 一起作为构造函数使用时,它返回一个新创建的 String 对象,存放的是字符串 s 或 s 的字符串表示。当不用 new 运算符调用 String() 时,它只把 s 转换成原始的字符串,并返回转换后的值。
String(s); //参照String解释。
SyntaxError // 语法错误
TypeError //类型错误
undefined //未定义
URIError //URI错误

typeof() //typeof是一个一元运算符(就像++,--,!,- 等一元运算符),不是一个函数,也不是一个语句。

这个辨析很必要,初学者往往以为它是一个函数,因为它经常被以typeof(abc)类似的形式使用,所以貌似函数。

但可以 var b = (typeof abc=="undefined") 这样用就说明了它不是函数(js里面函数执行要跟括号的)也不是语句(语句就不能再和后面的值进行==比较了)
typeof(1); 返回的值是:number
typeof(NaN); 返回的值是:number 因为它本身是数字类型,只是代表特殊非数字值
typeof(Number.MIN_VALUE);
typeof(Infinity); 返回的值是:
typeof("123"); 返回的值是:string
typeof(true);
typeof(window);
typeof(document);
typeof(null);
typeof(eval);
typeof(Date);
typeof(sss);
typeof(undefined);









































1.JavaScript中Infinity(无穷大)、NaN、undefined、null
在Javascript中,无穷大为Infinity
那么Infinity+Infinity=Infinity
Infinity*2=Infinity
但是Infinity-Infinity=NaN
10*“f” = NaN但是10*"2"=20,因为发生了类型转换
NaN表示Not a Number 这两个特殊的数值的类型都是“number”

!!NaN=false
!!Infinity=true

Infinity == Infinity为true
但是NaN == NaN为false

当undefined参与数学运算时,结果会为NaN
如1+undefined结果为NaN
当undefined参与字符串运算时,担任"undefined"的角色,如果""+undefined为“undefined"

当null参与数学运算时,很多时候担任的是0的角色,为1+null为1,1*null为0,1/null为Infinity
但null参与字符串运算时,担任的时"null"的角色“”+null为“null”

相关文档
最新文档