在使用Visual Studio做开发的时候,智能感知是非常方便的。从VS2008开始,提供了对javascript的智能感知支持。例如

上述代码中,我们先用document对象的getElementById的方式取得了文档中的一个Id为form1的元素,实际上就是默认的那个窗体元素。然后,我们将其赋给一个名为f的变量。

然后,我们在使用f 这个变量的时候,就能自动地列出该form元素所应该有的一些成员,例如action等等。

这些属于是默认的元素和方法的智能感知,假设我们自己有一些自定义js代码,如何让它也能够智能感知呢?

答案是:对于自定义方法的智能感知,是自动的。

例如,我们在页面中添加一个方法如下

function Helloworld(name) {
    alert("hello," + name);
}

然后在文档的任何一个部分,我们想调用该方法,都可以自动地被智能感知识别到

这种智能感知应该是最基本的。但是我们经常在用c#编写代码的时候,有另外一种更好的智能感知:就是说不光是列出方法名,而且会有对该方法以及它的参数,返回值的详细描述,这样使用者就可以更好地使用该方法了。如下所示

这是怎么实现的呢?其实这是通过注释来实现的,如下面所示

/// <summary>
/// 根据一个人名返回一个问候语
/// </summary>
/// <param name="name">要问候的人</param>
/// <returns>返回的问候语</returns>
public string Helloworld(string name)
{
    return "hello," + name;
}

这种注释我们称为XML注释,是从.NET 2.0开始提供的一种新功能。

好,了解了上面的知识后,如果我们需要为我们的javascript代码添加类似的智能感知提示,那么能不能也用注释呢?

是的,我们的确可以这么做

function SomeMethod(a, b) {
    /// <summary>
    /// 这是一个方法
    /// </summary>
    /// <param name="a">这是参数a</param>
    /// <param name="b">这是参数b</param>
    /// <returns>方法的返回值</returns>
    return "Hello,worod";
}

有一点不同的是,这些注释是写在方法内部的,而不像C#那样写在方法外部。而且,如果要实现这样的功能,以上函数就不能直接在aspx页面中编写,而是要单独写一个js文件。如default.js

然后在aspx中添加对该js的引用

<script src="default.js" type="text/javascript"></script>

本文由作者:陈希章 于 2009/7/12 19:17:26 发布在:http://www.cnblogs.com/chenxizhang/
本文版权归作者所有,可以转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
更多博客文章,以及作者对于博客引用方面的完整声明以及合作方面的政策,请参考以下站点:陈希章的博客中心

如何为javascript代码编写注释以支持智能感知相关推荐

  1. 纯javascript代码编写计算器程序

    今天来分享一下用纯javascript代码编写的一个计算器程序,很多行业都能用到这个程序,例如做装修预算.贷款利率等等. 首先来看一下完成后的效果: 具体代码如下:(关注我的博客,及时获取最新WEB前 ...

  2. 《Arduino实战》——1.7 为代码编写注释

    本节书摘来自异步社区<Arduino实战>一书中的第1章,第1.7节,作者 [美]Martin Evans , Joshua Noble , Jordan Hochenbaum ,译者 况 ...

  3. 使用Javascript代码编写一个“杭州亚运会倒计时”网页

    一.需求 使用Javascript代码编写一个"杭州亚运会倒计时"网页,要求适合于手机上展示.时间能精确到秒,显示的时间格式,可自己定,例如:560天15时36分20秒. 二.实现 ...

  4. 【数据结构学习之完全从零实现所有数据结构的代码编写之二】智能指针

    今天我们依然暂时不讲解数据结构里面的内容,我们来复习一下昨天学的模板技术用于数据结构编程的思想,给出一个模板技术的实例:智能指针的应用.喜欢看我分享的加我q:1126137994 加我共同学习交流各种 ...

  5. 在Visual Studio中启用对jquery等javascript框架的智能感知

    http://www.cnblogs.com/tonybinlj/archive/2009/05/26/1490434.html 启用Visual Studio 对jQuery的智能感知 首先看一下V ...

  6. 新书《编写可测试的JavaScript代码 》出版,感谢支持

    本书介绍 JavaScript专业开发人员必须具备的一个技能是能够编写可测试的代码.不管是创建新应用程序,还是重写遗留代码,本书都将向你展示如何为客户端和服务器编写和维护可测试的JavaScript代 ...

  7. 深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点

    才华横溢的Stoyan Stefanov,在他写的由O'Reilly初版的新书<JavaScript Patterns>(JavaScript模式)中,我想要是为我们的读者贡献其摘要,那会 ...

  8. 深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点(转)

    才华横溢的Stoyan Stefanov,在他写的由O'Reilly初版的新书<JavaScript Patterns>(JavaScript模式)中,我想要是为我们的读者贡献其摘要,那会 ...

  9. 前端每周清单第 7 期:Vue现状与展望、编写现代 JavaScript 代码、Web 开发者安全自检列表...

    前端每周清单第 7 期:Vue现状与展望.编写现代 JavaScript 代码.Web 开发者安全自检列表 为InfoQ中文站特供稿件,首发地址为这里:如需转载,请与InfoQ中文站联系.从属于笔者的 ...

最新文章

  1. insert exec 语句不能嵌套_走向DBA「MSSQL篇」 - 从SQL语句的角度提高数据库的访问性能...
  2. 中秋水文 | 安利一发国漫
  3. 兰州财经大学JAVA期末考什么_兰州财经大学大学国文下答案
  4. 转载——CVE-2019-0807
  5. 关于使用Transaction对于非数据库事务的操作
  6. c语言 自动化编译环境,《C编程.开始C》3.编译基础
  7. http请求消息体和响应消息体
  8. 运维管理_运维BIM软件-EcoDomus运维管理系统
  9. 【堆】Leetcode692:前k个高频单词
  10. 开课吧课堂:C++开发语言的应用方向有哪些?
  11. 计算机常用英语词汇及读音,e发音的单词有哪些
  12. 计算机快速录入,如何快速把书中的文字扫描并录入电脑
  13. 深度linux双显卡死机,Deepin配置IntelNvidia双显卡
  14. 一秒等于多少毫秒_新知|一秒有多长?你以为的“一瞬间”有多快?
  15. qte5编译dub.json
  16. 使用openlayers加载地图行政区域(结合百度云地图)
  17. linux(centos) 保存退出vi编辑
  18. rtx3050和rtx3060差距大吗 rtx3050和rtx3060的区别
  19. bzoj 2301(Mobius)
  20. 建立时间setup time/保持时间 hold time

热门文章

  1. 【视频课】完备理论+4大案例实践,一课深入掌握图像分类各个方向,配套导师永久答疑群...
  2. 【通知】有三AI固态硬盘最后一次补货,再增3套视频!
  3. 中国在线英语培训行业投资热点分析与需求前景预测报告2022版
  4. 6.6.1 CPropertySheet类
  5. 设置Windows XP自动登录的两种方法
  6. 第二周 第七节 列表的使用
  7. [PHP] 遗传算法求函数最大值一般实现
  8. number类型的数组
  9. 关于EF查询表里的部分字段
  10. 蜻蜓FM战略项目经理程彤博:真实需求背后的供给关系