• JavaScript


    eval()

      eval()方法像一个完整的ECMAScript解析器,只接受一个参数,即要执行的JavaScript字符串。当解析器发现代码中调用 eval()方法时,它会将传入的参数当作实际的ECMAScript语句来解析,然后把执行结果插入到原位置。eval()方法能够解释字符串的能力非 常强大,但也非常危险。当用它执行用户输入数据时,可能会有恶意用户输入威胁站点或应用程序字符的代码,就是所谓的代码注入

      [注意]在严格模式下,外部访问不到eval()中创建的任何变量或函数,为eval赋值也会导致错误

    escape():对字符串进行编码,将字符的unicode编码转化为16进制序列

      ES3中反对escape()的使用,并建议用encodeURI和encodeURIComponent代替,不过escape()依然被广 泛的用于cookie的编码,因为escape()恰好编码了cookie中的非法字符并且对路径中常出现的“/”不进行编码。escape()的不编码 字符有69个:

    * + - . / @ _ 0-9 a-z A-Z

    decodeURI():解码encodeURI()

    decodeURIComponent():解码encodeURIComponent()

    unescape():解码escape()

    encodeURI():对整个URI进行编码,用特殊的UTF-8替换所有无效的字符

      encodeURI()的不编码字符有82个:

    ! # $ & ' ( ) * + , - . / : ; = ? @ _ ~ 0-9 a-z A-Z

    encodeURIComponent():对URI的某一段进行编码(常用于GET方法传递参数),用特殊的UTF-8替换所有无效的字符

      一般来说,使用encodeURIComponent()比encodeURI()要多,因为在实践中更常见的是查询字符串参数而不是对基础URI编码。encodeURIComponent()的不编码字符有71个:

    !  ' ( ) * - . _ ~ 0-9 a-z A-Z
  • 相关阅读:
    [Cocoa]XCode下的iOS单元测试
    [Cocoa]深入浅出Cocoa之Framework
    [MAC技巧]在Dock上添加最近使用的应用程序
    [软件工程]Scrum 学习笔记
    [Cocoa, 医疗]Dicom Image Viewer for iPad
    [Cocoa]iOS 开发者账户,联机调试,发布应用事宜
    [医疗开发]医疗相关名词解析
    [Cocoa]XCode中定制Prefix.pch文件
    [Cocoa]苹果Cocoa编码规范
    饮食贴士远离便秘瘦小腹 生活至上,美容至尚!
  • 原文地址:https://www.cnblogs.com/webph/p/5111559.html
Copyright © 2020-2023  润新知