资讯专栏INFORMATION COLUMN

javascript 的 eval()——编写可维护的javascript读书笔记

lemon / 2745人阅读

摘要:尽管在类库中,可能会经常用到通常和操作有关,另外三种用法即使也非常罕见。一个通用的原则是,禁止使用,并且只在别无他法时使用,。和也是可以使用的,但不要用字符串形式而要用函数

再javascript中,eval()的参数是一个字符串,eval()会将传入的字符串当做代码来执行,开发者可以通过这个函数来载入外部的javascript代码,活着随机生成Javascript代码并执行它,比如:

eval("alert("Hi!")");
var count = 10;
var number = eval("5 + count");
console.log(number);

在Javascript中eval()并不是唯一可以执行Javascript字符串的函数,使用Function构造函数亦可以做到这一点,setTimeout()和setInterval()也可以,来看一些例子:

var myfunc = new Function("alert("Hi!")");
setTimeout("document.body.style.background="red"",50);
setInterval("document.title = "It is now"" + (new Date()),1000);

在大多数Javascript社区中,人们都认为这些代码是最糟糕的实践。尽管在Javascript类库中eval(),可能会经常用到(通常和JSON操作有关),另外三种用法即使也非常罕见。一个通用的原则是,禁止使用Function,并且只在别无他法时使用,eval()。setTimeout和setInterval也是可以使用的,但不要用字符串形式而要用函数

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/78951.html

相关文章

  • 编写维护 JavaScript读书笔记

    摘要:最近阅读了编写可维护的,在这里记录一下读书笔记。禁止使用,,,的字符串形式。避免使用级事件处理函数。让事件处理程序成为接触到对象的唯一函数。检测函数是检测检测函数的最佳选择。为特定浏览器的特性进行测试,并仅当特性存在时即可应用特性检测。 最近阅读了《编写可维护的 JavaScript》,在这里记录一下读书笔记。书中主要基于三个方向来讲解怎么增加代码的可维护性:编程风格、编程实践、自动化...

    tuniutech 评论0 收藏0
  • 读书笔记编写高质量javascript68个方法

    摘要:第条尽量少使用全局对象避免声明全局变量尽量声明局部变量避免对全局变量增加属性第条始终声明局部变量第条避免使用语句第条熟练使用闭包的函数值包含了比调用他们时执行所需要的代码还要更多的信息。那些在其所涵盖的作用域内跟踪变量的函数称为闭包。 书还没看完。一遍看,一遍写读书笔记。 这本书的序是JavaScript之父Brendan Eich写的,作者是JavaScript标准化委员会专家。可想...

    Vicky 评论0 收藏0
  • JSON 读书笔记

    摘要:解析器和库支持许多不同的编程语言。每个对象代表一条关于某人有姓和名的记录。使用解析器将转换为对象是更安全的做法。解析器只能识别文本,而不会编译脚本。在浏览器中,这提供了原生的支持,而且解析器的速度更快。注意的字符串连接的规则利用解析器 JSON JSON:JavaScript 对象表示法(JavaScript Object Notation)。 JSON 是存储和交换文本信息的语法。类...

    lewinlee 评论0 收藏0
  • 读书笔记(02) - 维护性 - JavaScript高级程序设计

    摘要:解耦优势代码复用,单元测试。常用比较误区可同时判断,可用来判断对象属性是否存在。使用作判断无法进行充分的类型检查。文件中应用常量参考文档高级程序设计作者以乐之名本文原创,有不当的地方欢迎指出。 showImg(https://segmentfault.com/img/bVburXw?w=500&h=400); 编写可维护性代码 可维护的代码遵循原则: 可理解性 (方便他人理解) 直观...

    k00baa 评论0 收藏0
  • 《你不知道JavaScript》 (上) 阅读摘要

    摘要:但是如果非全局的变量如果被遮蔽了,无论如何都无法被访问到。但是如果引擎在代码中找到,就会完全不做任何优化。结构的分句中具有块级作用域。第四章提升编译器函数声明会被提升,而函数表达式不会被提升。 本书属于基础类书籍,会有比较多的基础知识,所以这里仅记录平常不怎么容易注意到的知识点,不会全记,供大家和自己翻阅; 上中下三本的读书笔记: 《你不知道的JavaScript》 (上) 读书笔记...

    FingerLiu 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<