js隐式编程

原创 2017年12月25日 11:22:19

一.最早初期我们对HTML元素所要执行的代码一般采用以下方式

1.HTML页面

    <input type="button" onclick="oldMethod()" value="最古老的方式" />
2.JS代码
        //最古老的方式
        function oldMethod() {
            alert("最古老的方式");
        }
我们发现,如果方法名称(oldMathod)发生变化,需要修改2处

经过发展,提出了HTML元素和JS代码要实现页码分离方式.


二.页码分离

1.HTML页面

    <input type="button" id="btnTest" value="代码分离方式" />

2.JS代码

        //代码分离方式
        $(function () {
            $("#btnTest").click(function () {
                alert("代码分离方式");
            })
        })
相比最古老的方式,需要给元素增加一个id,实现的HTML元素和JS代码分离


三.隐式编程方式

1.HTML页面

<input type="button" myClick="myClick" value="隐式编程方式" />
2.JS代码

        //隐式编程方式
        $(function () {
            $("input[myClick]").click(function () {
                var btnStr = $(this).attr("myClick");
                eval(btnStr + "()");
            })
        })
        function myClick()
        {
            alert("隐式编程方式");
        }
这样好像HTML和JS代码没有任何关系了,只需要加一个自定的属性,JS中找到这个属性再增加相应的功能.










JS各种类型问题与隐式类型转换

由于JS中的数据类型是松散类型,并且其在进行操作符运算时并不会像C++和Java一样先检测数据类型,而是隐式的进行数据类型转换,返回值有时并不如我们想象的那样。尤其是对于像&&操作符涉及到短路操作,并...
  • Debbie1993
  • Debbie1993
  • 2016年03月24日 16:30
  • 1406

JS的类型转换,强制转换和隐式转换

JS的类型转换1.强制转换通过String(),Number(),Boolean()函数强制转换var str=123; var str1='123'; console.log(typeo...
  • sinat_29454619
  • sinat_29454619
  • 2017年07月01日 17:24
  • 1280

js 全局变量 局部变量 隐式声明 显式声明,作用域

JS 中使用 var 声明变量,也可以不使用var 这样定义的就是全局变量,js解释器执行时首先在全局构建一个全局对象,我们写的全局变量就是为这个全局对象做准备的,就是为了该对象的属性读取,可以使用t...
  • java_goodstudy
  • java_goodstudy
  • 2016年05月25日 15:56
  • 1081

js基础之关于Boolean及相等运算符的隐式类型转换

Boolean函数根据 w3c规范 布尔对象共有这几种方法: 方法 描述 toSource() 返回该对象的源代码。 toStri...
  • suedar1
  • suedar1
  • 2017年12月01日 13:43
  • 56

JS各种类型问题与隐式类型转换

由于JS中的数据类型是松散类型,并且其在进行操作符运算时并不会像C++和Java一样先检测数据类型,而是隐式的进行数据类型转换,返回值有时并不如我们想象的那样。尤其是对于像&&操作符涉及到短路操作,并...
  • Debbie1993
  • Debbie1993
  • 2016年03月24日 16:30
  • 1406

js 全局变量 局部变量 隐式声明 显式声明,作用域

JS 中使用 var 声明变量,也可以不使用var 这样定义的就是全局变量,js解释器执行时首先在全局构建一个全局对象,我们写的全局变量就是为这个全局对象做准备的,就是为了该对象的属性读取,可以使用t...
  • java_goodstudy
  • java_goodstudy
  • 2016年05月25日 15:56
  • 1081

【编程好习惯】借助隐式初始化简化程序逻辑

本文出自 “至简李云” 博客,请务必保留此出处http://yunli.blog.51cto.com/831344/271278 在图1中示例了三个API的原型,分别是mprotecto...
  • mantis_1984
  • mantis_1984
  • 2014年03月20日 10:04
  • 656

蘑菇街春招 - 编程题第二题 - 隐式图搜索 - 四个水杯

#include using namespace std; struct CUP { int x, y; }; struct Node { CUP a[4]; int ste...
  • u013889450
  • u013889450
  • 2016年03月31日 21:41
  • 294

Scala隐式转化和并发编程

1.Scala隐式彻底详解 隐式转换 implicit ,可通过手动指定将某种类型的对象或者某种类转换成其他类型的类或者对象 形式:implicit def function 隐式函数、隐式参数...
  • sundujing
  • sundujing
  • 2016年05月05日 17:40
  • 4766

Effective C++第七章-模板和泛型编程之编译期多态(运行期多态)和隐式接口(显式接口)

运行期多态(虚函数)和编译器多态(模板)运行期多态的说明示例:class Animal //基类 { public : virtual void shout() = 0; }; clas...
  • mlyjqx
  • mlyjqx
  • 2017年07月19日 08:52
  • 149
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:js隐式编程
举报原因:
原因补充:

(最多只允许输入30个字)