检测字符串中是否有空格
var str = "asdf gh";
if (str.indexOf(" ") != -1) {
alert("有 空 格");
return
} else {
alert("没有空格");
}
字符串中某个元素从左自右第一个索引
str.indexOf("0")
//字符串 模糊比较查询
let newstr1 = str1 == null ? "" : str1.toUpperCase()
let newstr2 = str2 == null ? "" : str2.toUpperCase()
//如果查询的是为空,则直接跳过
if (newstr1 != "" && newstr2 != "") {
var result = newstr1.indexOf(newstr2); //找到str1里面是否包含有str2,不存在返回-1,存在返回 从左往右数 字符串第一个下标
if (result == -1) {
return false;
} else {
return true;
}
} else {
return false;
}
字符串中查找 已知索引位置 的字符
str.charAt(index)
字符串中某个元素从右自左第一个索引
value.lastIndexOf"0"()
去掉小数点前后无效的0
JS代码中直接使用 parseFloat() 即可
##ToString("#0.##") 里面的格式是保留两位小数
JS中判断null的方法
var exp = null;
if (!exp && typeof exp != "undefined" && exp != 0)
{
alert("is null");
}
if (exp === null)
{
alert("is null");
}
JS数组
.push(‘元素’) 增加元素
.indexOf(‘元素’) 获取元素索引
.splice(index) 删除指定位置元素
.splice(index,number) number: 表示从此元素开始,向后删除几个元素
数组遍历
遍历数组方法当然有很多,for()循环,map(),filter(),等。
for(let 元素 of 数组){
var index= this.checkboxRemove.indexOf(fullData.id)
this.checkboxRemove.splice(index)
}
数组.map((元素,index) => {
})
数组中包含对象,根据某字段排序
array.sort(function (a,b) {
return a.order - b.order
})
ES6中 …
// 1.把数组中的元素孤立起来
let iArray = ['1', '2', '3'];
console.log(...iArray);
// 打印结果 1 2 3
// 2.在数组中添加元素
let iArray = ['1', '2', '3'];
console.log(['0', ...iArray, '4']);
// 打印结果 ["0", "1", "2", "3", "4"]
// 3.在数组中删除元素(取出一个元素)
// 与结构赋值的结合
// 如果将扩展运算符用于数组赋值,只能放在参数的最后一位,否则会报错。
const [first, ...rest] = [1, 2, 3, 4, 5];
console.log(first); // 打印结果 1
console.log([...rest]); // 打印结果 [2, 3, 4, 5]
const [one, ...last] = ["foo"];
console.log(one); // 打印结果 foo
console.log([...last]); // 打印结果 []
// 4.数组的合并
// ES6 的写法
var arr1 = [0, 1, 2];
var arr2 = [3, 4, 5];
arr1.push(...arr2);
console.log(arr1); // 打印结果 [0, 1, 2, 3, 4, 5]
// 推荐使用写法
console.log([...arr1, ...arr2]); // 打印结果 [0, 1, 2, 3, 4, 5]
// 5.将字符串转成数组
let iString = 'zhongguoren';
console.log([...iString]); // 打印结果 ["z", "h", "o", "n", "g", "g", "u", "o", "r", "e", "n"]
// 6.Map 和 Set 结构, Generator 函数
let map = new Map([
[1, 'one'],
[2, 'two'],
[3, 'three'],
]);
let arr = [...map.keys()];
console.log(arr);
// 打印结果 [1, 2, 3]
// 7.当做参数传递和直接传数组的区别
iClick4() {
let iArray = ['1', '2', '3'];
//注意传的时候,就要三个点
this.hanshu(...iArray);
},
hanshu(...iArray) {
let ooo = 1;
console.log(...iArray);
// 打印结果 1 2 3
},
// 8.求出最大值
let iArray = [1, 2, 3, 99, 44, 66, 21, 85, 77];
let ooo = Math.max(...iArray);
console.log(ooo);
// 打印结果 99
// 9.如果对没有iterator接口的对象,使用扩展运算符,将会报错。
let obj = {
name: 'zhh',
age: '20'
}
console.log([...obj]);
操作对象
// 1.添加一个属性
let a = {age: 18, id: 10};
let c = {name: 'zhh', ...a};
console.log(c);
// 打印结果 {name: "zhh", age: 18, id: 10}
// 2.修改一个属性
let a = {name: 'zhh', age: 18, id: 10};
let c = {...a, name: 'zhh1'};
console.log(c);
// 打印结果 {name: "zhh1", age: 18, id: 10}
// 3.删除一个属性(拿出属性或者对象)
let a = {name: 'zhh', age: 18, id: 10};
let {name, ...c} = a;
console.log(name, c);
// 打印结果 zhh {age: 18, id: 10}
//对象转数组
Array.from(对象)
js分割字符串
var str = '1,g,h,h,j';
var arr = str.split(',');