init commit
This commit is contained in:
70
public/assets/libs/art-template/src/utils.js
Normal file
70
public/assets/libs/art-template/src/utils.js
Normal file
@@ -0,0 +1,70 @@
|
||||
var toString = function (value, type) {
|
||||
|
||||
if (typeof value !== 'string') {
|
||||
|
||||
type = typeof value;
|
||||
if (type === 'number') {
|
||||
value += '';
|
||||
} else if (type === 'function') {
|
||||
value = toString(value.call(value));
|
||||
} else {
|
||||
value = '';
|
||||
}
|
||||
}
|
||||
|
||||
return value;
|
||||
|
||||
};
|
||||
|
||||
|
||||
var escapeMap = {
|
||||
"<": "<",
|
||||
">": ">",
|
||||
'"': """,
|
||||
"'": "'",
|
||||
"&": "&"
|
||||
};
|
||||
|
||||
|
||||
var escapeFn = function (s) {
|
||||
return escapeMap[s];
|
||||
};
|
||||
|
||||
var escapeHTML = function (content) {
|
||||
return toString(content)
|
||||
.replace(/&(?![\w#]+;)|[<>"']/g, escapeFn);
|
||||
};
|
||||
|
||||
|
||||
var isArray = Array.isArray || function (obj) {
|
||||
return ({}).toString.call(obj) === '[object Array]';
|
||||
};
|
||||
|
||||
|
||||
var each = function (data, callback) {
|
||||
var i, len;
|
||||
if (isArray(data)) {
|
||||
for (i = 0, len = data.length; i < len; i++) {
|
||||
callback.call(data, data[i], i, data);
|
||||
}
|
||||
} else {
|
||||
for (i in data) {
|
||||
callback.call(data, data[i], i);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
var utils = template.utils = {
|
||||
|
||||
$helpers: {},
|
||||
|
||||
$include: renderFile,
|
||||
|
||||
$string: toString,
|
||||
|
||||
$escape: escapeHTML,
|
||||
|
||||
$each: each
|
||||
|
||||
};
|
||||
Reference in New Issue
Block a user