- 浏览: 247991 次
- 性别:
- 来自: Shanghai
文章分类
最新评论
-
a790851624:
本人刚到公司,接到一个任务:在java代码中集成kettle的 ...
java应用程序中集成Kettle -
obnijeh:
谢谢共享,正需要。
Kettle 简介及Kettle用户操作手册 -
zhaokui:
很好,很好
Java中SimpleDateFormat用法详解——获得常用时间表示法(二) -
zhaokui:
,不错,不错
Java中SimpleDateFormat用法详解(一) -
babaoqi:
学习下,O(∩_∩)O谢谢了
Kettle 简介及Kettle用户操作手册
在JavaScript中,对象转换成基本数据类型或者字符串用到了toString() 方法和alueOf()方法。
将对象转换成字符串时:
1.调用对象的toString()方法,将对象转换成返回的字符串,如果方法返回其它基本数据类型,则会自动转换成字符串;
2.如果对象没有toString()方法,或方法返回的不是基本数据类型,那么以相同方式调用valueOf()方法;
3.同样,如果valueOf()方法不存在或者返回值不是基本数据类型,则提示错误(IE可能不会报错);
- //自定义函数(类)
- function myObject(objectName)
- {
- this.objectName = objectName;
- }
- var myObj = new myObject("MyObj");
- //正常情况,首先调用toString()方法
- myObject.prototype.toString = function(){return 123;};
- myObject.prototype.valueOf = function(){return 321;};
- alert(myObj); //结果为123
- //toString()方法返回不正确类型,调用valueOf()方法
- myObject.prototype.toString = function(){return new Date();};
- myObject.prototype.valueOf = function(){return 321;};
- alert(myObj); //结果为321
- //toString()方法不存在,valueOf()方法返回不正确类型
- myObject.prototype.toString = undefined;
- myObject.prototype.valueOf = function(){return new Date();};
- alert(myObj); //提示错误(IE8中不报错并提示[Object])
//自定义函数(类) function myObject(objectName) { this.objectName = objectName; } var myObj = new myObject("MyObj"); //正常情况,首先调用toString()方法 myObject.prototype.toString = function(){return 123;}; myObject.prototype.valueOf = function(){return 321;}; alert(myObj); //结果为123 //toString()方法返回不正确类型,调用valueOf()方法 myObject.prototype.toString = function(){return new Date();}; myObject.prototype.valueOf = function(){return 321;}; alert(myObj); //结果为321 //toString()方法不存在,valueOf()方法返回不正确类型 myObject.prototype.toString = undefined; myObject.prototype.valueOf = function(){return new Date();}; alert(myObj); //提示错误(IE8中不报错并提示[Object])
类似的,将对象转换成基本数据类型时也会作相应处理,但是会先调用valueOf() 函数而不是toString()。
将对象转换成基本数据类型时:
1.调用对象的valueOf() 方法,将对象转换成返回的基本数据类型;
2.如果对象没有valueOf() 方法,或方法返回的不是基本数据类型,那么以相同方式调用toString()方法;
3.同样,如果toString()方法不存在或者返回值不是基本数据类型,则提示错误;
- //自定义函数(类)
- function myObject(objectName)
- {
- this.objectName = objectName;
- }
- var myObj = new myObject("MyObj");
- //正常情况,首先调用valueOf()方法
- myObject.prototype.toString = function(){return 123;};
- myObject.prototype.valueOf = function(){return 321;};
- alert(myObj*2); //结果为642
- //valueOf()方法返回不正确类型,调用toString()方法
- myObject.prototype.toString = function(){return 123;};
- myObject.prototype.valueOf = function(){return new Date();};
- alert(myObj*2); //结果为246
- //toString()方法不存在,valueOf()方法返回不正确类型
- myObject.prototype.toString = undefined;
- myObject.prototype.valueOf = function(){return new Date();};
- alert(myObj*2); //提示错误
//自定义函数(类) function myObject(objectName) { this.objectName = objectName; } var myObj = new myObject("MyObj"); //正常情况,首先调用valueOf()方法 myObject.prototype.toString = function(){return 123;}; myObject.prototype.valueOf = function(){return 321;}; alert(myObj*2); //结果为642 //valueOf()方法返回不正确类型,调用toString()方法 myObject.prototype.toString = function(){return 123;}; myObject.prototype.valueOf = function(){return new Date();}; alert(myObj*2); //结果为246 //toString()方法不存在,valueOf()方法返回不正确类型 myObject.prototype.toString = undefined; myObject.prototype.valueOf = function(){return new Date();}; alert(myObj*2); //提示错误
当对象操作设计“+”运算符时就要特别注意,因为“+”既能进行算数操作,也能进行字符串拼接操作。
1.当“+”的两个操作数有对象类型时,先把对象根据上面的规则转换成基本数据类型;
2.转换完的两个操作数如果有一个是字符串类型的,则把另一个操作数转换成字符串;
3.否则,把两个操作数都转换成数值类型(或NaN),进行相加操作。
- //自定义函数(类)
- function myObject(objectName)
- {
- this.objectName = objectName;
- }
- var myObj = new myObject("MyObj");
- //正常情况,首先调用valueOf()方法,返回数字
- myObject.prototype.toString = function(){return 123;};
- myObject.prototype.valueOf = function(){return 321;};
- alert(myObj + 1); //结果为322(数值相加)
- alert(myObj + "1"); //结果为3211(字符串拼接)
- //正常情况,首先调用valueOf()方法,返回字符串
- myObject.prototype.toString = function(){return 123;};
- myObject.prototype.valueOf = function(){return "321";};
- alert(myObj + 1); //结果为3211(字符串拼接)
- alert(myObj + "1"); //结果为3211(字符串拼接)
- //valueOf()方法返回不正确类型,调用toString()方法,返回字符串
- myObject.prototype.toString = function(){return "123";};
- myObject.prototype.valueOf = function(){return new Date();};
- alert(myObj + 1); //结果为1231(字符串拼接)
- alert(myObj + "1"); //结果为1231(字符串拼接)
- //toString()方法不存在,valueOf()方法返回不正确类型
- myObject.prototype.toString = undefined;
- myObject.prototype.valueOf = function(){return new Date();};
- alert(myObj + 1); //提示错误(IE8不报错,并提示undefined)
- alert(myObj + "1"); //提示错误(IE8不报错,并提示undefined)
发表评论
-
Validation of viewstate MAC failed. 解决方法
2013-05-30 08:38 4891前段时间公司为了减轻服务器压力,对网页做了集群,分布在多台服 ... -
ASP.NET无法检测IE10,导致_doPostBack未定义
2013-05-27 16:18 1152[原文发表地址] Bug and Fix: ASP.NET ... -
网站架构相关PPT、文章整理(更新于2009-7-15)
2012-10-15 14:49 712在这篇blog中放置了我收集的一些网站架构相关的PPT和文章, ... -
Tomcat部署Web应用方法总结
2012-05-23 11:20 1246Tomcat部署Web应用方法 ... -
cookies原理
2011-11-04 11:14 941实际上,Cookie的作用就是与服务器互动。 用户登录:在很多 ... -
web.xml中<security-constraint>和四种认证类型
2011-11-01 10:04 1020<security-constraint> 的子元 ... -
jQuery获取Select选择的Text和 Value(转)
2011-08-24 17:49 794Query获取Select选择的Text ... -
jsp动态上传多个文件---实用的例子
2011-08-17 17:26 1217现在还有一个错误就是文件名是中文的话,就乱码。还在改进. u ... -
测试网站访问速度的5个方法
2011-08-05 15:59 1025Pingdom:http://tools.ping ... -
jquery 动画 效果 显示
2011-08-03 17:00 1616Jqury 1.4API文档见附件 <!DO ... -
去除CKEditor自动添加的p
2011-07-13 11:51 1924CKEditor 3 JavaScript API Docu ... -
ckeditor的详细配置
2011-07-13 11:48 1358... -
js将字符串转换为数字
2011-05-10 10:09 1718方法主要有三种 转 ... -
js操作字符串
2011-05-10 09:49 762在页面上,总免不了各种各样的字符串操作,在此,我整理了一些关于 ... -
Javascript - Select操作大集合(动态添加option等)
2011-05-02 14:05 1123现在步入正题,看到 书中讲Form元素的操作,像Textbo ... -
JS的Document属性和方法解释
2011-05-02 13:41 947对象属性 document.title //设置文档标题 ... -
document方法总结
2011-05-02 13:40 875代表给定浏览器窗口中的 HTML 文档。 成员表 ... -
动态生成table
2011-05-02 11:47 870记得以前 ... -
web性能测试步骤
2011-03-01 09:24 1167web性能测试的步骤: ... -
jsp页面提交中文乱码的几种解决方法集锦(转载)
2011-01-26 19:47 1202JSP页面提交后中文字符出现乱码-tomcat下中文乱码问题 ...
相关推荐
在JavaScript中,我们可以使用内置的`JSON.stringify()`方法将JavaScript对象转换为JSON字符串。 ### JSON.stringify()方法 `JSON.stringify()`是JavaScript中的全局函数,用于将JavaScript值转换为JSON字符串。它...
以下是对JavaScript中数据类型转换的详细说明: 1. `parseInt()` 函数:这个函数用于将字符串转化为整型。它会尝试解析字符串,从开头开始找到第一个数字,并将其转换为整数。如果字符串的第一位不是数字,`...
- **Object**: 对象类型的用户接口。 - **Boolean**、**Number**、**String**: 这些类型提供了对应的对象包装器,使得简单数据类型可以转换为对象,以便进行更复杂的操作。 - **Date**、**Array**、**RegExp**: 这些...
JavaScript对象定义是编程语言中的核心概念,它在Web开发中起着至关重要的作用。JavaScript是一种基于原型的对象导向语言,它的对象定义方式具有独特的灵活性。在本文中,我们将深入探讨JavaScript对象的定义、创建...
JavaScript类型转换是编程中非常重要的一个概念,它描述了在运算过程中,不同数据类型之间的自动或手动转换行为。JavaScript语言是动态类型的,这意味着你可以在运行时改变变量所存储值的类型,而这正是类型转换的...
1. 对象概述:JavaScript对象是一种数据结构,它由键值对组成,键可以是字符串或者符号,值可以是任何类型的数据。对象是通过大括号{}创建的,键和值之间用冒号分隔,键值对之间用逗号分隔。 2. 属性与方法:对象的...
JavaScript对象模型(Object Model)和执行模型是理解JavaScript工作原理的关键概念。JavaScript是一种基于原型的动态类型语言,其对象模型是其核心特性之一。本文将深入探讨JavaScript的对象模型和执行模型,以及...
JavaScript 数据类型转换详解 JavaScript 中有多种数据类型,包括数值类型、字符串类型、布尔类型等。这些类型之间可以进行转换,以下是 JavaScript 中最常用的数据类型转换方法。 一、转为字符串 在 JavaScript ...
JavaScript中的类型转换是处理不同类型数据时需要进行的一种操作,它在编程中扮演着重要的角色。在JavaScript中,存在着多种类型,包括原始类型和对象类型。原始类型主要包括Number、String、Boolean、Undefined和...
JavaScript中的隐式类型转换是其弱类型特性的重要体现,它允许不同数据类型的值在运算时进行自动转换,但这也可能导致一些意料之外的结果。在JavaScript中,数据类型包括字符串(String)、数字(Number)、布尔(Boolean...
16. **类型转换**:讲解JavaScript的动态类型系统,以及隐式和显式的类型转换。 17. **性能优化**:提供关于对象使用和内存管理的最佳实践,以提升代码效率。 18. **错误处理与调试**:指导如何在代码中有效地捕捉...
函数在JavaScript中是一种特殊的对象类型,可以作为值赋给变量、作为参数传递给另一个函数、或作为其它函数的返回值。函数对象可以具有arguments、caller和callee等属性。 在JavaScript中,我们可以使用函数的...
本项目专注于纯JavaScript实现JSON(JavaScript Object Notation)与JavaScript对象之间的互相转换,这对于数据的存储、传输以及序列化至关重要。JSON作为一种轻量级的数据交换格式,因其易读易写、机器可读性高而被...
Number对象用于处理数值类型,虽然在JavaScript中数字是基本类型,但Number对象提供了一些有用的静态方法,如`isNaN()`检查是否为非数字值,`parseInt()`和`parseFloat()`用于从字符串中解析数字,以及`toFixed()`...
GLSL启发式转换是将这些JavaScript矢量类型转换为GLSL语言的过程,目的是在GPU上运行,利用其并行计算能力。GLSL是专为OpenGL设计的,用于定义顶点着色器和片段着色器,它们在图形渲染管线的不同阶段运行。在...
文档"Javascript数组操作整理.doc"可能包含了对数组常见操作的详细总结,如遍历方法(`for`循环、`forEach`、`map`等)、查找方法(`indexOf`、`find`、`filter`等)、排序方法(`sort`)、转换方法(`concat`、`...
类型转换是网页编程不可或缺的内容,本文先介绍自动类型转换,接着是强制性的显式类型转换,最后如何将基本数据类型提升为对象。 JavaScript的数据类型分为基本数据类型和复合数据类型。复合数据类型主要有对象、...