位置: 编程技术 - 正文

Javascript & DHTML 实例编程(教程)基础知识

编辑:rootadmin
[ -- :: | Author: never-online ] 这一节首先请下载JScript.chm这本手册,无论新手老手,有一本手册是免不了的,特别是对于新手,如果你没有空翻犀牛书,那么这本手册将是你了解这门语言的首选。下面所讲的大多数,手册上可以没有提及,或提及很少的内容。 以下的教程都是针对你对上面所说的JScript.chm这本手册了解的基础上而写的,如果你还没有看过JScript.chm,建议你先下载,边看手册,边看教程。 JS的语法与大多数类C的语言差不多的语法,差别只在它本身的特性上面。所以语法的具体内容,我不再多写,多看看手册应该明白的。 JS五大对象:String, Number, Boolean, Object, Function。 JS四种循环: for(var i=0; i<n; i++) {} do {} while(true); while(true) {} for (var i in collection) {} 异常处理: try {} catch(aVariable){} JS语法我就不一一列举了,这里只JS的几大对象进行一些说明,手册也许是没有说到的。 一、字符串。 字符串是最常用的。而强制转换成字符串的方式至少有几下两种: 1、用字符串连接符"+"号。+号在JS里如果是运算就是加,如果是字符串,就是拼接,比如: <script> var a_number = var a_string = a_number + ""; </script> 2、用String强制转型(String)。 <script> var a_number = var a_string = String(a_number); </script> 在这里要注意一点,上面说的是强制转型,String前是没有"new"关键字的。如果加上new 关键字,那么得到的将是一个String对象。对象可以包含属性和方法,而字符串不能,以下可以做一个比较: <script> var a_number = var a_string = String(a_number); a_string.property = "js"; alert(a_string.property) //将提示undefined var a_object = new String(a_number) a_object.property = "js"; alert(a_object.property) //将提示js </script> 所以,有new和没有new是有区别的。这一点在Number,Boolean里都是如此,所以关于这样的转型,在以后中将不再多说。 二、数字(Number)。 这里也说一说转型的问题。 除了可以用Number来强制转型外,也可以用parseInt, parseFloat来转成整型或者浮点型。如果转型后不是数字,那么,将返回NaN(Not a Number),这个时候可以用isNaN函数来判断,这里你可以查一下手册,看看里面的语法。顺便记一下这个函数。 三、布尔型(Boolean)。 这一个就较麻烦一些了,因为JS里对它的处理比较奇特。 除了JScript手册上所说的:“ 一个值为 true 或者 false 的表达式。如果需要,非 Boolean 表达式也可以被转换为 Boolean 值,但是要遵循下列规则: 所有的对象都被当作 true。 当且仅当字符串为空时,该字符串被当作 false。 null 和 undefined 被当作 false。 当且仅当数字为零时,该数字被当作 false。 ”以外,还应该注意: 首先,在没有强制转换成布尔型之前,也就是非true或者也非false的时候 1、在数字条件判断中,一般情况下就是三种情况:0,负数,正数,只要是非0就是true,下面是示例。 <script> var a = 0; var b = -1; var c = 1; function assert (aVar) { if (aVar) alert(true); else alert(false); } assert(a) // false assert(b) // true assert(c) // true </script> 注意:上例中的条件判断是直接判断条件语句的,如果我们把条件语句改成: <script> var a = 0; var b = -1; var c = 1; function assert (aVar) { if (aVar==true) alert(true); else alert(false); } assert(a) // false assert(b) // false assert(c) // true </script> 负数会有截然不同的结果。 2、在字符串中,也需要注意 <script> function assert (aVar) { if (aVar) alert(true); else alert(false); } var a="undefined"; var b="false"; var c=""; assert(a) // true assert(b) // true assert(c) // false </script> 注意:上例中的条件判断是直接判断条件语句的,如果我们把条件语句改成: <script> function assert (aVar) { if (aVar==true) alert(true); else alert(false); } var a="undefined"; var b="false"; var c=""; assert(a) // false assert(b) // false assert(c) // false </script> 也会有截然不同的结果。因此,在处理这方面问题的时候要小心。 也许有些朋友看到这里就会有点晕了,那么怎么样才能像手册中所说,只有"",0,null,undefined这些才能是false呢?方法至少有两种: (一)、强制转型: 1、用上面所说过的Boolean(aVar)来转型。 2、用“非运算符”来转型。比如上例 <script> function assert (aVar) { if (!!aVar==true) alert(true); else alert(false); } var a="undefined"; var b="false"; var c=""; assert(a) // true assert(b) // true assert(c) // false </script> 两个取反,将aVar转成Boolean型,相当于Boolean(aVar)。 (二)、全等运算符。 全等运算符是三个等于"===",这与上面所说的不同,它只进行同类型的比较。就上例所说,它只比较的是true或者false,如果与字符串或数字等比,都是false,只有与true相比,才是true。举例: <script> function assert (aVar) { if (aVar===true) alert(true); else alert(false); } var a="undefined"; var b=true; var c=1; assert(a) // false assert(b) // true assert(c) // false </script> 四、对象(Object)。 JS创建对象有至少以下两种方法: 1、如上所说,用new关键字。比如new Number(),new String("string"),new Object(),new customFunction()等。 这种方法在手册上有很详细的说明,这里就不再多说。 2、还可以用花括号括起来。比如 var o = { m1:'never-online.net', m2:'blog' } 这种方法就比较省时省力了。利用这种方法来创建对象,需要注意的就是, 每个成员后有一个":"冒号,冒号后是该成员的内容。 其次就是,成员内容后有一个逗号",",但仅最后一个成员是没有逗号的。 五、函数(Function)。 函数在JS里的作用有两个, 一是做为一个普通函数一样被调用。 二是可以做为一个"类"(class)来使用。 第一条就没有什么可说明的了,手册上说得很清楚了,第二条就简要说明一下。 上面第四点里说到对象,除了创建JS本身的对象之外,需要创建一个类的实例,那么就必须先把“类”写出来。这个类就是Function。 比如: <script> function myclass() { this.m1="member--m1"; this.m2="member--m2"; } var o = new myclass(); </script> 六、关于this和new关键字。 也许有些朋友还不太清楚这个this的作用是什么。这是面向对象里所提及的内容 这里也简单说一下,this就是“自己”的意思,而上面的的“自己”,就是指myclass。 举个例子来说myclass这个类就是一个模具,模具上有一个名字(m1),还有一个螺丝(m2),而new关键字就可以理解成“生产”。那么就可以把上面的代码理解成: (模具 myclass)function myclass() { (模具myclass的名字是)this.m1="member--m1" (模具myclass上面的螺丝是)this.m2="member--m2"; } 按照模具myclass的样式生产一个产品o var o= new myclass(); 这个刚出炉的产品就有模具myclass的所有特性了。当然,我们可以按照这个模具的样式生产成千上万个。 如果我们愿意,我们还可以修改一下他的属性,比如,我生产完一个产品,想把他的名字换了。我们也可以这么做 var product = new myclass(); product.m1 = "newProduct" 上面这样讲解,希望能清楚一些。 基本把要说的基础知识简单的说了一些,JS的基础知识其实也有很多,知道有疏忽,但是又不便多写,写多了就烦琐了,只有走一步看一步了,看看还有什么不清楚的,才能再写出来了

推荐整理分享Javascript & DHTML 实例编程(教程)基础知识,希望有所帮助,仅作参考,欢迎阅读内容。

Javascript & DHTML 实例编程(教程)基础知识

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

Javascript & DHTML 实例编程(教程)DOM基础和基本API 一、什么是DOM?什么叫DOM,DOM是文档对象模型(DocumentObjectModel,是基于浏览器编程(在本教程中,可以说就是DHTML编程)的一套API接口,W3C出台的推荐标

Javascript & DHTML 实例编程(教程)(三)初级实例篇1—上传文件控件实例 效果DEMO:

Javascript & DHTML 实例编程(教程)(四)初级实例篇2—动画 上篇说了动态创建结点和删除结点的例子,这一篇说一些如何用setInterval和setTimeout做简单的动画。语法皆是window.setTimeout(fn,delay),window.setInterval(fn,delay)fn

标签: Javascript & DHTML 实例编程(教程)基础知识

本文链接地址:https://www.jiuchutong.com/biancheng/383958.html 转载请保留说明!

上一篇:getElementById在任意一款浏览器中都可以用吗的疑问回复(getelementbyid isnotafunction)

下一篇:Javascript & DHTML 实例编程(教程)DOM基础和基本API

  • 股权转让如何交税
  • 制造业的加工费可以放制造费用的二级科目加工费吗
  • 代理费住宿费都包括什么
  • 全额工资是到手工资吗
  • 补提上年度所得税影响本年所得税吗
  • 2021年旅游免费
  • 库存商品进价成本
  • 外购已税什么意思
  • 固定资产暂估折旧能税前扣除吗
  • 银行贷款损失的认定标准
  • 个人出租房屋应该注意什么
  • 支付的劳务派遣费计入什么科目里
  • 建设项目检测费
  • 企事业承包承租方缴纳的管理费税费
  • 变更办税人信息在哪变更
  • 出纳汇错款会计怎么做账
  • 软件企业研发费用占比要求
  • 银行抵押贷款结清后需要解押吗
  • windows10如何设置输入法
  • 电脑连接网线但没有网络
  • 事业单位在建工程转固定资产的账务处理
  • php字符串函数大全
  • PHP:zip_entry_compressedsize()的用法_Zip函数
  • 工程竣工决算会计账务处理
  • 研发专利什么意思
  • 哈士奇新手礼包
  • framework core
  • 最优化模型的优点
  • 前端的基本知识
  • 基于MATLAB的车牌识别
  • 购进原材料款项未付应编制什么凭证
  • 企业盘盈的固定资产其核算的会计科目是
  • 公司未实缴能破产吗
  • 当月计提的公积金怎么取
  • 经营活动现金净流量与净利润的关系
  • 营业额和营业收入怎么算
  • 工地会计内账
  • sqlserver 中charindex/patindex/like 的比较
  • 制造费用一定要摊销吗
  • 委托加工物资的成本包括
  • 什么各级工会的离休退休人员的待遇
  • 售出货物
  • 小规模纳税人取得普通发票可以抵扣吗
  • 年底进项比销项大要做账么
  • 房地产开发企业分为几个等级
  • 福利费可以直接入管理费用吗
  • 员工餐费标准怎么算
  • 进项税额不得从销项税额中抵扣项目是什么意思
  • 向银行借的款属于什么会计要素
  • 工厂厨房厨具
  • 保证合同的要件
  • 未结转本年利润的股东分红的分录
  • 购买商品发生的费用计入
  • sql优化常用的15种方法
  • 如何查看mysql连接池
  • win8开机错误
  • win7 64位系统无法使用银行网银怎么办? IE9浏览器无法使用农业银行网银的解决方法
  • windows7的使用期限
  • ubuntu搭建tftp服务器
  • win108080端口怎么打开
  • macos 多屏
  • 命令行批量重命名
  • win xp系统安装
  • centos设置双网卡
  • pcalc是什么软件
  • 验证win10
  • linux getuid
  • apache部署项目
  • jquery操作
  • 查找第一个字符
  • unity3d 版本
  • Android studio 打包apk后卡在首屏
  • jquery设置important
  • jquery中有几种方法可以来设置和获取样式
  • 类库怎么用
  • js写日期
  • 昆山华润燃气多少钱一方
  • 烟草什么品牌好
  • 广东为什么用粤做简称?
  • 北京ca证书下载安装流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设