JavaScript是基于对象的,任何元素都可以看成对象。然而,类型和对象是不同的。本文中,我们除了讨论类型和对象的一些特点之外,更重要的是研究如何写出好的并且利于重用的类型。毕竟,JavaScript这种流行的脚本语言如果能够进行良好的封装,并形成一个庞大的类型库,对于重用是非常有意义的。 网上对于prototype的文章很多,一直没明白核心的思想。最后写了很多例子代码后才明白:prototype只能用在类型上。 以下是一些关于类型和...
JS提供了一些内置对象、函数和构造器供我们编程,如Math、parseInt、Object、Array等。这些都是可见的,编程时可以使用的。比如我可以new Object 或 new Array。 有一些则是不可见的,这些对象只能由引擎在特殊的情形提供。这些类型的对象往往还被消减了一些功能。下面列举一些 一、Arguments 类型Arguments 类型 不能由程序员手动创建其对象,即你不能 new Arguments() 。 它有且仅有一个对象arguments 代码如下:function func() ...
如果把通过函数或方法调用,明确的将某种类型转换成另一种类型称为显示转换 ,相反则称为隐式类型转换 。google和维基百科中没有找到“显示类型转换”,“隐式类型转换”的字眼。暂且这么称呼。 一、 运算中存在的隐式类型转换 1, “+”运算符 代码如下:var a = 11, b = 22; var c = a + b; 这里引擎将会先把a变成字符串"11"再与b进行连接,变成了"1122"。有人会有疑问,为什么不把b变成数字22再进行算术加运算呢,这样的话c就是...
这里所说的JavaScript指浏览器环境中的包括宿主环境在内的。第一种是ECMAScript Global Object,第二种是宿主环境(Host)下的全局对象/函数。 一、核心JavaScript内置对象,即ECMAScript实现提供的不依赖于宿主环境的对象 这些对象在程序执行之前就已经(实例化)存在了。ECMAScript称为The Global Object,分为以下几种 1, 值属性的全局对象(Value Properties of the Global Object)。有NaN,Infinity,undefined。2, 函数属性的...
1 判断是否为数组类型 代码如下: //var a=[0]; document.write(isArray(a),''); function isArray(obj){ return (typeof obj=='object')&&obj.constructor==Array; } //]]> 2 判断是否为字符串类型 代码如下: //document.write(isString('test'),''); document.write(isString(10),''); function isString(str){ return (typeof str=='string')&&str.constructor==String; } //]]> 3 判断是否为数值类型 代码如下: //document.writ...
js判断undefined类型 今天使用showModalDialog打开页面,返回值时。当打开的页面点击关闭按钮或直接点浏览器上的关闭则返回值是undefined所以自作聪明判断 var reValue=window.showModalDialog("","",""); if (reValue== undefined){ alert("undefined"); } 发现判断不出来,最后查了下资料要用typeof 方法:if (typeof(reValue) == "undefined") { alert("undefined"); } typeof 返回的是字符串,有六种可能:"number...
简介1.引用类型(Reference type)引用类型是javascript中一种内部类型。它主要是当做一个指代,代替一个变量或者函数,当然在需要真实值时,又可以通过它寻找到真实值。 2.引用类型的结构引用类型的值时由两部分构成,一是引用类型的值指代的对象的所属对象,这里我们姑且把它叫做base,二是base中的指代对象的对象名称。用伪代码来表示:代码如下:var valueOfReferenceType = {base: ,propertyName: }; 3.使用情景引用类型的使用...
代码如下:function zhen(str) { var arr_1 = ["", "\u62fe", "\u4f70", "\u4edf", "\u4e07", "\u4ebf"], arr_2 = ["", "\u4e07", "\u4ebf"]; var maskstr = arr_1.slice(1).join(""); var arr2 = ["\u96f6", "\u58f9", "\u8d30", "\u53c1", "\u8086", "\u4f0d", "\u9646", "\u67d2", "\u634c", "\u7396"]; var arr3 = new Array; var arr = str.split(""); arr.reverse(); var _step_ = 4; ...
Jquery1.9版本中$.browser已被剔除: 判断浏览器类型: 代码如下: $.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase()); $.browser.webkit = /webkit/.test(navigator.userAgent.toLowerCase()); $.browser.opera = /opera/.test(navigator.userAgent.toLowerCase()); $.browser.msie = /msie/.test(navigator.userAgent.toLowerCase()); 等号后面的表达式返回的就是 true/false, 可以直接用来替换原来的 $...
由于很多移动终端不支持 Flash,因此 许多绚丽多彩的 Flash效果出不来。如果,能够判断出访问Web网页的类型(PC还是移动终端)。就可以对症下药,找出解决的办法! 访问的类型为移动终端我们就用.gif代替Flash(.swf后缀)动画,PC端就不做改变。这样就比较完美了! 如下所示,函数 flashChecker() 就是用来检测访问的类型。 代码如下: 输出swf动画 * url :单击 swf动画 后的跳转地址 * swfLink: *.swf 素材地址 */ function GetSwfHt...
1 判断是否为数组类型 2 判断是否为字符串类型 3 判断是否为数值类型 4 判断是否为日期类型 5 判断是否为函数 6 判断是否为对象 1 判断是否为数组类型 代码如下: //var a=[0]; document.write(isArray(a),''); function isArray(obj){ return (typeof obj=='object')&&obj.constructor==Array; } //]]> 2 判断是否为字符串类型 代码如下: //document.write(isString('test'),''); document.write(isString(10),''); function...
3345687687876789123 转化为:xxx,xxx,xxx 代码如下: 结果为: 代码如下: 方法一总耗时:14 ms 方法二总耗时:9 ms 方法三总耗时:174 ms 方法四总耗时:34 ms 方法五总耗时:39 ms 方法六总耗时:7 ms 方法七总耗时:9 ms 方法八总耗时:30 ms 方法九总耗时:14 ms 方法十总耗时:4 ms
代码如下: if (reValue== undefined){ alert("undefined"); } 发现判断不出来,最后查了下资料要用typeof方法: if (typeof(reValue) == "undefined") { alert("undefined"); } typeof 返回的是字符串,有六种可能:"number"、"string"、"boolean"、"object"、"function"、"undefined" 3.4 数据类型 ECMAScript中有 5种简单数据类型(也称为基本数据类型):Undefined、Null、Boolean、Number 和String。还有 1种复杂数据类型——...
(一)转换为字符串 代码如下:X + toString()String() 函数转换为字符串一般是将函数体输出,不过可以重写其toString方法 (二)转换为数字 代码如下:parseInt(),parseFloat() 使用Number(),前面不要加new,这样就转换成对象了。 参与数学运算(加法除外) + X :注意这不是加法 (三)转换为布尔值 自动转换:if语句,||,&&,!等逻辑判断环境中会把表达式自动转换为布尔值 强制转换:使用!!,使用Boolean(),前面不要加new,这样...
js中不同类型的基础数据之间可以转换,这种转换是有规则可寻的,并非随意的随机的。在js中有5种基础类型数据:string、number、boolean、null、undefined,其中,常用于计算或者比较的类型是前面三种。 基础数据之间的转换其它类型转化数字原始数据类型 目标类型Numberundefined NaNnull 0false 0true 1数字串 相应的数字不能转化的字符串 NaN其它类型转化为字符串原始数据类型 目标类型Stringundefined undefinednull nullfalse ...