合肥市建设通网站,利于seo的建站系统有哪些,中国建设网站简州新城土地整改项目,wordpress界面变宽3.基本概念
松散类型:所谓松散类型就是可以用来保存任何类型的数据。给未经声明的变量赋值在严格模式下会导致抛出ReferenceError错误。Object本质上由一组无序的名值对组成。未经初始化的默认值就会取得undefined值。True和False都不是Boolean值#xff0c;只是标识符。如果…3.基本概念
松散类型:所谓松散类型就是可以用来保存任何类型的数据。给未经声明的变量赋值在严格模式下会导致抛出ReferenceError错误。Object本质上由一组无序的名值对组成。未经初始化的默认值就会取得undefined值。True和False都不是Boolean值只是标识符。如果小数点后面没有跟任何数字那么这个数值就可以作为整数值来保存,因为浮点数值需要的内存空间是保存整数值的两倍。NaN与任何值都不相等包括NaN本身。把非数值转化为数值的3个函数:Number()、paeseInt()和parseFloat()。ECMAScript中的对象其实就是一组数据和功能的集合。Object类型所具有的任何属性和方法也同样存在于更具体的对象中。Object的每个实例都具有下列属性和方法:
constructor保存着用于创建当前对象的函数。hasOwnProperty用于检查给定的属性在当前对象实例中是否存在isPrototypeof(object)用于检查传入的对象是否是当前对象的原型propertyIsEnumerable(propertyName)用于检查给定的属性是否能够使用for-in语句来枚举toLocaleString()返回对象的字符串表示该字符串与执行环境的地区相对应toString()返回对象的字符串表示valueOf()返回对象的字符串、数值或布尔值表示
从技术角度讲ECMA-262中对象的行为不一定适用于JavaScript中的其他对象。浏览器环境中的对象比如BOM和DOM中的对象都属于宿主的对象因为它们是由宿主实现提供和定义的。ECMA-262不负责定义宿主对象因此宿主对象可能会也可能不会继承object。一元操作符只能操作一个值的操作符叫一元操作符。位操作符:位操作符用于在最基本的层次上即按内存中表示数值的位来操作数值。ECMAScript中的所有数值都以IEEE-765 64位格式存储但位操作符并不直接操作64位的值。而是先将64位的值转换成32位的整数然后执行操作最好再将结果转换回64位。对于开发人员来说由于64位存储格式是透明的因此整个过程就像是只存在32位的整数一样。求-18的二进制码的过程: (1求18的二进制码即: 0000 0000 0000 0000 0000 0000 0001 0010 (2) 对该二进制码进行按位取反 1111 1111 1111 1111 1111 1111 1110 1101 (3)二进制反码加1 1111 1111 1111 1111 1111 1111 1110 1110ECMAScript会尽力向我们隐藏所有的信息即在以二进制字符串形式输出一个负数时我们看到的只是这个负数绝对值的二进制码前面加上了一个负号。按位非NOT按位非操作符由一个波浪线(~)表示执行按位非得结果就是返回数值得反码。按位非是ECMAScript操作符中少数几个与二进制计算有关得操作符之一。按位与只在两个数值的对应位都是1时才返回1任何一位是0结果都是0。按位或|只有在两个数值的对应位都是0时才返回0任何1位是1结果都是1。按位异或(^)只有在两个数值的对应位都不相同时才返回1否则返回0。左移(),这个操作符会将数值的所有位向左移动指定的位数。有符号的右移(),这个操作符会将数值向右移动但保留符号位。无符号的右移()这个操作符会将数值的所有32位都向右移动。不能在逻辑与操作中使用未定义的值。我们可以利用逻辑或的这一行来避免位变量赋null或undefined值。如果参与乘性计算的某个操作数不是数值后台会先使用Number()转型函数将其转换为数值。也就是说空字符串将被当作0布尔值true将被当作1。var result25“5” ; //“55”var result3NaN-1; //NaNECMAScript对象的属性都没有顺序。因此通过for-in循环输出的属性名的顺序时不可测的。具体来讲所有属性都会被返回一次但返回的先后次序可能会因浏览器而异。ECMAScript的switch语句中可使用任何数据类型,无论是字符串,还是对象都没有问题。其次每个case的值不一定是常量可以是变量甚至是表达式。ECMAScript中switch语句在比较值时使用的时全等操作符因此不会发生类型转换(例如,字符串10不等于数值10)。ECMAScript函数的参数与大多数其他语言中函数的参数有所不同。ECMAScript函数不介意传递进来多少个参数也不在乎传进来参数是什么数据类型。也就是说即便你定义的函数只接受两个参数。可以传递一个、三个甚至不传递参数而解析器永远不会有什么怨言。之所以会这样原因是ECMAScript中的参数在内部是用一个数组来表示的。函数接收到的始终是这个数组而不关心数组中包含哪些参数。实际上在函数体内可以通过arguments对象来访问这个参数数组从而获取传递给函数的每一个参数。ECMAScript函数的一个重要特点:命名的参数只提供便利,但不是必需的。arguments的值永远与对应命名参数的值保持同步。例如传进来的第二个参数num210,现在利用arguments[1]9后num29。不过这并不是说读取这两个值会访问相同的内存空间它们的内存空间是独立的但它们的值会同步。没有传递值得命名参数将自动被赋予undefined值和定义了变量但没有初始化一样。ECMAScript函数不能像传统意义上那样实现重载。如果定义了两个名字相同得函数则该名字只属于后定义得函数。JavaScript得核心语言特性在ECMA-262中是以名为ECMAScript的伪语言的形式来定义的。ECMAScript中包含了所有基本的语法、操作符、数据类型以及完成基本的计算任务所必需的对象但没有对取得输入和产生输出的机制作出规定。