区分路径字符串和标记字符串
Distinguish between path and markup strings
我有一个javascript方法,它只接受一个参数。该参数可以是路径(在这种情况下,函数将使用ajax解析变量)、函数(将被调用以解析变量)或有效标记(将直接使用)。
我正在寻找区分表示路径的字符串和表示标记的字符串的建议。
注意:我不太担心标记是否无效
如果你一直使用你得到的函数,那么你就必须使用正则表达式来确定你得到了什么。问题是,它可能容易出错。
你最好传入一个对象,让对象根据它的属性告诉你你有什么。
function myMethod( obj ) {
if (obj.path) {
console.log("I have a path:", obj.path);
} else {
console.log("I have a path:", obj.html);
}
}
myMethod({"path":"/foo/bar/"});
myMethod({"html":"<p>/foo/bar/</p>"});
您可以使用这样的东西:
function validate(param) {
if (typeof(param) == 'function') {
console.log('It is a function!')
} else if (typeof(param) == 'string') {
if (param.indexOf('http') == 0) {
console.log('It is a path!')
} else {
console.log('It is a markup!')
}
}
}
这远非完美(尤其是在Path部门),但这只是一个起点。
演示:http://jsfiddle.net/4369k/
相关文章:
- 未捕获的InvalidValueError:setIcon:不是字符串;并且没有url属性;并且没有路径属性
- 如何将字符串附加到对象中'路径'在Javascript中
- 从javascript中的字符串路径获取文件名
- 从包含密钥路径的字符串中获取json值
- 绘制动画openlayers线条字符串路径
- 区分路径字符串和标记字符串
- 从路径字符串 - Javascript 获取所有父路径
- 通过document.location以javascript中的字符串形式传递文件路径
- 按匹配值对字符串进行分组(字符串是链接路径)
- 正则表达式,从路径中提取子字符串
- 使用 Node.js,如何将随机字符串路径重定向到主页
- 匹配不带查询字符串的 URL 路径
- 更少的js modifyVars不适用于字符串路径
- 框架中的实用程序,用于更轻松地定义 SVG 路径字符串
- 拆分文件夹路径的字符串
- 通过点语法字符串路径访问对象
- 将字符串路径数组返回到对象中的每个深层属性
- 使用javascript修改字符串路径
- Javascript对象值从字符串路径
- 使用 HTML 5 文件系统 API 从字符串路径读取文件