网站搭建入门,网站建设毕业读书笔记,广州企业名录,wordpress访问量显示一、基本数据类型#xff1a;1、js中基本数据类型:String、Boolean、Number、Null、undefined#xff1b;复合数据类型#xff1a;object对象类型、Array数组类型特殊对象#xff1a;function函数类型基本数据类型① String —字符串。若使用var声明变量#xff0c;var x…一、基本数据类型 1、js中基本数据类型:String、Boolean、Number、Null、undefined 复合数据类型object对象类型、Array数组类型 特殊对象function函数类型 基本数据类型 ① String —字符串。 若使用var声明变量var x “Andy” ,x 为字符串。将一个值转换成字符串:toString( )方法 ② Boolean—布尔值。 只有两个值true或者false 但true不一定等于1false也不一定等于0 要将一个值转换为其对应的Boolean值可以调用类型转换函数Boolean( ) ③ Number —整数、浮点数、NaN. 其中任何数值除以0会返回NaN而NaN除以任何数值也返回NaN; isNaN( )函数可以确定一个参数是否 “不是数值”。 例如alertisNaN(“Andy”)// “Andy”不是数值返回true alertisNaN(25)//25是数值返回false alertisNaN(NaN )//返回true ps: Number函数的转换规则 字符串:可用parseIn( )和parseFloat( )来转换成数值。 Boolean值:true和false将分别替换为1和0 null值返回0 undefined返回NaN; 对象可调用valueOf( )方法toString方法 ④ Null— 空。 如果定义的变量在未来用于保存对象最好将变量初始化为null 例var a null; ⑤ undefined—一个值undefined。 使用var声明变量但未对其加以初始化时这个变量的值就是undefined。 例var a; alert(a);//undefined PS:① null与undefined的区别 undefined没有必要显示设置值即变量不含有值 null需要被初始化用于、保存清空变量 ②布尔值、数值、对象、字符串都有toString( )方法null和undefined没有此方法。 复合数据类型 ① object类型— 例var a new object( ) 属性和方法 constructor( )—保存着用于创建当前对象的函数 hasOwnProperty( )—检查该属性是否在当前对象实例中是 返回 true若在原型中则返回 false isPropertyOf( )—检查传入的对象是否是另一个对象的原型 propertyIsEnumberable( )—检查给定的属性是否能够使用for-in语句来枚举 toString( )—对象转换为字符串表示 valueOf —对象转换为字符串、布尔值、数值表示 ② Array类型— 例var a new Array(); a[0] 123; a[1] 456; alert(a.length); //打印出 2 特殊对象 function函数类型 — 可写成 var test function{}或 function test{} 函数没有重载总是指向最后定义的function 内部特殊对象arguments: ① callee 对函数对象本身的引用用于匿名函数的递归 ② caller 只有在函数执行时才有定义functionName.caller this: 全局环境中this指向window 事件处理函数中this指向绑定事件的节点 构造函数中this指向被创建的对象 call apply 判断JS中的数据类型 typeof、instanceof、constructor、prototype方法 ① typeof 例 var a 123 var b function{ this.name Andy } alerttypeof a// number alert(typeof b) //function alert(typeof a number )//true alert(typeof b boolean)//false ② instanceof 判断已知对象类型的方法,instanceof 后面一定是对象类型区分大小写 例 alerta instanceof Array//false alertb instanceof Function //true ③ constructor 根据对象的constructor判断 例 alerta.constructor Array//false alertb.condtructor Function//true ④ prototype : 例 alertObject.prototype.toString.call(a)[object Number]//true alertObject.prototype.toString.call(b)[object String] //false 扩展 原文链接 http://www.xiabingbao.com/javascript/2015/07/04/javascript-type/ typeof方法 ①number, string, boolean, function, undefined可以被正确检测出 ②nullarrayjsondate,reg,error 全部被检测为 object类型 ③typeof 区分不出 json和array类型输出都是 object instanceof 方法 ①array、function、json、date、reg、error可以检测为true ②number、string、boolean、undefined、null检测为false; ③null 和 undefined 检测不成object或其他类型 因此要用instanceof 方法首先判断 是否为null和undefined类型。 constructor 方法 除了null和undefined 其他类型均能使用constructor判断 但被判断的array必须在当前页面声明例如对应子页面的Array 用父页面来判断会返回false。 prototype 方法 Object.prototype.toString.call(变量) 可以检测出所有类型 例如 Object.prototype.toString.call(date) //返回[object Date] jquery中$.type的实现 检测出所有类型和 Object.prototype.toString.call(date)方法很像输出结果为prototype方法输出的第二个参数即 $.type(num); //number $.type(nul); // null 转载于:https://www.cnblogs.com/emory/p/5008482.html