本文摘自PHP中文网,作者云罗郡主,侵删。
本篇文章给大家带来的内容是关于前端常用的JavaScript操作(代码实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
1.删除字符串中指定的一段字符
例:删除"10km"中的km
1 2 3 4 5 6 7 8 | var str = "10km"
var res = str.replace( 'km' , '' )
var res = str.split( 'km' ).join( '' )
|
2.数组去重
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | var arr = [1, 2, 3, 1, 2]
var res = [... new Set(arr)]
var res = Array.from( new Set(arr))
var res = [];
for ( var i in arr) {
if (res.indexOf(arr[i] === -1) {
res.push(arr[i])
}
}
var res = []
arr.map((item, index) => {
if (res.indexOf(item) === -1){
res.push(item)
}
})
|
附:Array.from()的用法:
Array.from(arr, mapfn,thisArg):用于将两类可以把对象转换为真正的数组。
类似数组的对象(必须有length属性)
可遍历的对象(部署了Iterator接口的,String,ES6新增的Map和Set)。
参数:第一个是数组,必传;第二个是一个函数(类似map函数),对数组元素进行操作后再返回数组,可选;第三个是对于this关键字的指向,可选。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | var obj1 = {
0: 'a' ,
1: 'b' ,
2: 'c'
}
var arr1 = Array.from(obj1)
console.log(arr1)
var obj2 = {
0: 'a' ,
1: 'b' ,
2: 'c' ,
length: 2
}
var arr2 = Array.from(obj2)
console.log(arr2)
var obj3 = {
0: 'a' ,
1: 'b' ,
2: 'c' ,
length: 4
}
var arr3 = Array.from(obj3)
console.log(arr3)
var obj4 = {
0: 'a' ,
1: 'b' ,
2: 'c' ,
length: 3
}
var arr4 = Array.from(obj4, item => item + 1)
console.log(arr4)
var obj5 = {
"1" : "a" ,
"0" : "b" ,
length: 2
}
var arr5 = Array.from(obj5)
console.log(arr5)
|
3.将伪数组对象转化为数组
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | var obj = {
0: 'a' ,
1: 'b' ,
length: 2
}
Array.from(obj)
Array.prototype.slice.call(obj)
Array.prototype.concat.apply([], obj)
Array.prototype.splice.call(obj, 0)
console.log(obj)
|
4.数组或对象的深拷贝
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | JSON.parse(JSON.stringify(obj))
function clone (obj) {
var res = obj.constructor === Array ? [] : {}
for ( var i in obj) {
res[i] = typeof obj[i] === 'object' ? clone (obj[i]) : obj[i]
}
return res
}
var arr = [ 'a' , [ 'b' , [ 'c' ]]]
var res = arr.slice(0)
console.log(res)
res[1][1] = 'b'
console.log(res)
console.log(arr)
var arr = [ 'a' , [ 'b' , [ 'c' ]]]
var res = [].concat(arr)
res[1][1] = 'b'
console.log(res)
console.log(arr)
var obj = {a: "a" , b: {c: "d" }}
var res = Object.assign({}, obj)
res.b.c= "e"
console.log(res)
console.log(obj)
|
5.没有块级作用域导致内层变量覆盖外层变量。
1 2 3 4 5 6 7 8 | var date = new Date (). getDate ();
function f(){
console.log( date );
if (false){
var date = 0;
}
}
f();
|
6.ES6中标签模板的用法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | let a = 1;
let b = 2;
function tag(arr, value1, value2){
console.log(arr);
console.log(value1);
console.log(value2);
}
tag`hello ${a + b} world ${a * b}`;
|
以上就是对的全部介绍,如果您想了解更多有关HTML视频教程,请关注PHP中文网。
以上就是前端常用的JavaScript操作(代码实例)的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
window对象在前端领域的角色
盒模型与bfc的深入讲解
解决angular中的浏览器兼容性问题的方法介绍
cs如何实现翻转效果
使用html和css的新特性实现响应式布局
前端项目中目录结构优化的方法总结
javascript介绍service worker 的生命周期及使用场景
web前端js是什么
前端html5几种存储方式的总结
前端怎么调用graphql api?
更多相关阅读请进入《JavaScript操作》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » 前端常用的JavaScript操作(代码实例)