replace方法及回调函数:
const encodeHtml = (str)=>{
if(typeof str === 'string'){
return str.replace(/<|&|>/g, (matches)=>{
return ({
'<': '<',
'&': '&',
'>': '>'
}[matches]);
});
}
return '';
}
对象简写方法:
const obj = {
name: 'amy',
getName() {
return 'nani?'
}
};
用some判断数组是否包含:
const arr = ['nico', 'barron', 3344, 1314];
const has = arr.some(v=> v===1314);
console.log(has);
罗马数字转正数:
{
/**
* @param {string} s
* @return {number}
*/
const romanToInt = (s) => {
const codeNum = {
'I': 1,
'V': 5,
'X': 10,
'L': 50,
'C': 100,
'D': 500,
'M': 1000
};
const result = [...s].reduce((pre, cur, index, arr) => {
return codeNum[arr[index + 1]] > codeNum[cur] ? pre -= codeNum[cur] : pre += (codeNum[cur] || 0);
}, 0);
console.log(result);
return result;
};
romanToInt('IV');
romanToInt('MDC');
romanToInt('IM');
}