js面向对象编程:if中可以使用那些作为判断条件呢?_第1页
js面向对象编程:if中可以使用那些作为判断条件呢?_第2页
js面向对象编程:if中可以使用那些作为判断条件呢?_第3页
js面向对象编程:if中可以使用那些作为判断条件呢?_第4页
js面向对象编程:if中可以使用那些作为判断条件呢?_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

jsjs 面向对象编程 面向对象编程 ifif 中可以使用那些作为判断条件呢 中可以使用那些作为判断条件呢 在所有在所有编程语言中语言中 ifif 是最长用的判断之一 但在是最长用的判断之一 但在 jsjs 中到底哪些东西可以在中到底哪些东西可以在 ifif 中式作中式作 为判断表达式呢 为判断表达式呢 例如如何几行 只是少了一个括号 真假就完全不同 到底表示什么含义呢 var obj obj Funtext function if obj Funtext alert true obj Funtext else alert false obj Funtext obj Funtext function if obj Funtext alert true obj Funtext else alert false obj Funtext 1 1 第一类已定义的变量但未赋值在第一类已定义的变量但未赋值在 ifif 中认为是假中认为是假 例如 var t if t alert true 已定义未赋值 else alert false 已定义未赋值 2 2 第二类已定义的变量 赋值为空字符串在第二类已定义的变量 赋值为空字符串在 ifif 中认为是假 赋值为其他的字符串 也就是中认为是假 赋值为其他的字符串 也就是 是字符串中有字符就认为是真是字符串中有字符就认为是真 例如 var t t if t alert true t else alert false t if 判断是假 再例如 var t t if t alert true t else alert false t t 111 if t alert true t 111 else alert false t 111 if 判断是真 也就是对于字符串类型 只要有字符 即使是空格字符 if 判断也为真 3 3 第三类已定义的变量 赋值为第三类已定义的变量 赋值为 truetrue 在在 ifif 中认为是真 赋值为中认为是真 赋值为 falsefalse 则为假 这和 则为假 这和 其他语言中其他语言中 boolbool 的类型的变量是一样的 的类型的变量是一样的 例如 var t t false if t alert true t false else alert false t false t true if t alert true t true else alert false t true 4 4 第四类已定义的变量 赋值为第四类已定义的变量 赋值为 0 0 在在 ifif 中则为假 其他数值认为是真 这和中则为假 其他数值认为是真 这和 c 语言中数值中数值 的类型的变量是一样的 的类型的变量是一样的 例如 var t t 0 if t alert true t 0 else alert false t 0 t 0 0 if t alert true t 0 0 else alert false t 0 0 测试发现不管是 0 还是 0 0 都是假 var t t 2 if t alert true t 2 else alert false t 2 发现非 0 是都是真 5 5 第五类第五类 jsjs 中的特殊值中的特殊值 nullnull undefinedundefined 都是假 都是假 var t null if t alert true t null else alert false t null t undefined if t alert true t undefined else alert false t undefined 由于在 js 中未定义的变量默认值是 undefined 因此这也就就解释了第一类情况 6 6 第六类已定义的函数 根据调用方式又分为两种第六类已定义的函数 根据调用方式又分为两种 第一种 不带括号的 如果定义了就是真 没有定义会报错 function testfunction if testfunction alert true testfunction else alert false testfunction 第二种 带括号的 其实相当于调用函数 自然是根据函数的返回值判断真假 例如 function testfunction if testfunction alert true testfunction else alert false testfunction 是假 是因为 函数如果没有定义返回值值 则返回值是 undefined 7 7 第七类已定义的对象 未赋值时在第七类已定义的对象 未赋值时在 ifif 中则为假 赋值后是真 中则为假 赋值后是真 例如 var obj if obj alert true obj else alert false obj 其实由于在 js 中变量在没有赋值时是没有类型的 因此和第一种情况是一样的 但在赋值后 就会变成真 例如 var obj obj if obj alert true obj else alert false obj 8 8 第八类已定义的对象的属性字段 和单独的变量是一样的 例如数值型为第八类已定义的对象的属性字段 和单独的变量是一样的 例如数值型为 0 0 时是假 其时是假 其 他为真 字符串型是为空值时是假 其他为真 他为真 字符串型是为空值时是假 其他为真 例如 var obj obj Text if obj Text alert true obj Text else alert false obj Text obj Text Text if obj Text alert true obj Text else alert false obj Text obj Text 0 if obj Text alert true obj Text else alert false obj Text obj Text 1 if obj Text alert true obj Text else alert false obj Text 9 9 第九类已定义的对象的方法 和单独的函数是一样的 第九类已定义的对象的方法 和单独的函数是一样的 不加括号是如果没定义就是假 var obj obj Funtext function if obj Funtext alert true obj Funtext else alert false obj Funtext if obj Funtext1 未定义属性 也没有定义方法 alert true obj Funtext1 else alert false obj Funtext1 加了括号相当于调用方法 就是根据返回值判断真假 var obj obj Funtext function if obj Funtext alert true obj Funtext else alert false obj Funtext obj Funtext2 function return ff if obj Funtext2 alert true obj Funtext2 else alert false obj Funtext2 可以看到在可以看到在 jsjs 中可以在中可以在 ifif 中作为判断的类型很多 但最终都可以看做这些类型的变形 中作为判断的类型很多 但最终都可以看做这些类型的变形 只要掌握了这些最基本的 就可以灵活运用只要掌握了这些最基本的 就可以灵活运用 ifif 判断了 判断了 最基本是最基本是 nullnull undefinedundefined

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论