0
点赞
收藏
分享

微信扫一扫

小问题及技巧

奔跑的酆 2022-01-31 阅读 66


  1. 数组代替对象
var nameIndex = 1;
var peopleObj = {
1:"小米",
2:"小明",
3:"小红"
}
console.log(peopleObj[nameIndex])


var nameIndex = 1;
var peopleArr = ["","小米","小明","小红"]
console.log(peopleArr[nameIndex])
  1. ​v-html​​ 标签内容可省
<span v-html="ydc.getPrice(parkBase.minLeasePrice)">{{ydc.getPrice(parkBase.minLeasePrice)}}</span>


<span v-html="ydc.getPrice(parkBase.minLeasePrice)"></span>
  1. ​switch case return​​​ 后 无需​​break​
function platform(value) {
switch (val) {
case "1":
return '单面'
break;
case "2":
return '双面'
break;
default:
return '--';
break;
}
}


function platform(value) {
switch (val) {
case "1":
return '单面'
case "2":
return '双面'
default:
return '--';
}
}
  1. 活用 ​​&&​​ 取代 三目运算符
var userName = "小米";
var age = userName == "小米" ? 14:"";
console.log(age)


var userName = "小米";
var age = userName == "小米" && 14;
console.log(age)
  1. ​nginx​​​配置中 ​​proxy_pass​​参数应为可以在浏览器打开的网址
location /api {
#proxy_pass http://api.map.baidu.com; 报错
proxy_pass http://api.map.baidu.com/location/ip;
}
  1. ​svg​​​中​​image​​标签创建及路径动态赋值问题
function $_svg(tagName) {
return $(document.createElementNS("http://www.w3.org/2000/svg", tagName));
}
var image = $_svg('image').appendTo('#g-box')
image[0].href.baseVal = 图片路径;
  1. 动态生成标签​​null​​值问题
var name = null;
# 填充时同时赋值,会造成 input 输入框内显示 null 字符串
$("tr.increase-kind").append(`<td><input type="text" value="${name}"></td>`);

## 填充后再赋值,input输入框内显示 空白
$("tr.increase-kind").append(`<td><input type="text"></td>`);
$("tr.increase-kind").find("td input").val(name)

8.操作数组遍历不一定要用​​for​​循环 以下方法都兼容IE9

var ages = [32, 33, 16, 40];
# some 返回是否存在item> 16
ages.some(item=>{return item > 16;});
//true
## map 返回所有(item>16)的结果
ages.map(item=>{return item > 16;});
//[true, true, false, true]
### filter 返回所有item>16结果为true 的 item
ages.filter(item=>{return item > 16;});
//[32, 33, 40]
#### every 返回所有item是否都大于16
ages.every(item=>{return item > 16;});
//false

9.​​filter​​数组去重

var a = [1, 1, 2, 1, 3, 11, 1, 1, 1]
var b = a.filter(function(item, index) {
return a.indexOf(item) == index;
})
console.log(b) // [1,2,3,11]

10.数组转字符串

var a = [1,2,3]
a.toString() / a.reduce((c,b)=>c+","+b) / a.join() // 默认逗号拼接

11.页面input 快速填充

$("input[type!='file']").map(index=>{$("input[type!='file']").eq(index).val(index)})

12.简单五角星评分公式

function setScore(score){
return "\u2605".repeat(score)+"\u2606".repeat(10-score)
}
setScore(7)
//"★★★★★★★☆☆☆"

13.toFixed()问题

可把 Number 四舍五入为指定小数位数的数字,
但返回的是以NumberObject表示的*字符串*

14.App内嵌套H5页面,点击事件反应迟钝

  • 将​​click​​​事件替换为​​touchstart​


举报

相关推荐

0 条评论