zoukankan      html  css  js  c++  java
  • js中的容错处理 与 ssi 在ftl中无法容错 与 字符串转变量

    1》JS中我们可以 做任何数据的容错。

    比如:使用对象前判断对象是否存在,

    if(typeof ob !="undefined"){alert(1) }

    否则会报错

    再比如:使用某个DOM节点的属性时,判断是否为存在,

    typeof($("#aa").attr("data-type"))!="undefined"

    在JS 中不像在服务端编译解析FTL

    我们是单纯的从浏览器客户端考虑这个问题,

    那么,没有什么是容错不了的。

    你定义的你没定义的。存在的不存在的。等等......
    3》下图通过ssi的方式引入的静态页是无法容错的,很显然是因为是ftl 在服务端解析的, 在服务端解析编译成  html的时候,如果这个静态页不存在的话,那么就会返回404页面片段。相当于ftl编译的静态页当中,有一块引入的这个html  静态页是  404的。所以,这种方式引入的 html 此文件是必须要求存在的。

    5》字符串转变量

    window["prop"] = {};

    window.prop={};

    如果是上面这种场景就不需要转了。

    下面是字符串数组,转为变量。相当于把这每一个字符串通过[]号的方式变为一个新的对象的属性。

    var a = ['a', 'b',  'c']
    var obj = {}
    for(i = 0; i < a.length; i++){
        obj[a[i]] = "abc" + 1
    }
    alert(obj.a)
     alert(obj.b)
      alert(obj.c)
     
    如果不想使用obj
    可以为
    for(i = 0; i < a.length; i++){
        window[a[i]] = "abc" + 1
    }
    alert(a)
     alert(b)
      alert(c)
    但是不推荐这么用,最好是第一种方法。
    相信才会最好
  • 相关阅读:
    如何在linux下使用sudo命令不用输入密码
    QT读写ini配置文件
    dubbo的灰度发布
    dubbo的重试原则
    dubbo的启动时检查
    dubbo的超时处理和配置覆盖
    dubbo配置文件加载顺序
    java基础-泛型的优点
    idea提交多个项目到github的同一个repository
    【掌握】dubbo环境搭建linux
  • 原文地址:https://www.cnblogs.com/dingyue/p/6775501.html
Copyright © 2011-2022 走看看