首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

对象常用方法

1、hasOwnProperty 检测对象是否拥有某个属性 用法: var o1 = {flag: "abc"}; o1.hasOwnProperty("flag") 运行结果: 如果对象存在该属性则返回...true,否则返回false 2、assign 合并对象属性 var o1 = {name: "zkq", age: 18}; var o2 = {address: "福建", sex: "男" } var...o3 = Object.assign(o1, o2); console.log(o3); 运行结果: 合并两个对象的属性,返回合并后的对象,不改变原对象的值,如果对象的属性重复,后面对象属性的值覆盖前面对象的属性值...3、defineProperty 动态为对象设置属性 var o1 = {}; Object.defineProperty(o1, "name", { value: "张三", //给属性赋值的内容...//设置属性是否可写,true可写,false只读,如果是false,就算代码运行了赋值语句,结果也是不会改变的 }); console.log(o1); 4、defineProperties 为对象动态设置多个属性值

7910

js对象拷贝方法

; 它不会拷贝对象的不可枚举的属性; 不可以拷贝对象中的对象; 可以拷贝 Symbol 类型的属性; 无法正确拷贝属性和属性 可以拷贝undefined/boolean/null/function/Date.../RegExp/array/array中的对象; 参考阮一峰文档: https://es6.ruanyifeng.com/#docs/object-methods#Object-assign 扩展运算符...这几种类型,经过 JSON.stringify 序列化之后的字符串中这个键值对会消失; 拷贝 Date 引用类型会变成字符串; 无法拷贝不可枚举的属性; 无法拷贝对象的原型链; 拷贝 RegExp 引用类型会变成空对象...; 对象中含有 NaN、Infinity 以及 -Infinity,JSON 序列化的结果会变成 null; 无法拷贝对象的循环引用,如果对象中有循环引用,会报错: Uncaught TypeError...JavaScript内置对象的复制: Set、Map、Date、RegExp等 * 2.

2.4K20

js常用方法总结

arr.length - 1] // 最后一项删掉 arr.length-- // 下一轮还和这一项比 j-- } } } 缺点 循环次数多,性能不好 对象的键值对...let obj = {} for (let i = 0; i < arr.length; i++) { // 把每一次循环得到的当前项,作为对象的属性名和属性值存储进去 let item =...== undefined){ // 证明对象中有这个属性 arr[i] = arr[arr.length - 1] arr.length-- i-- continue...} obj[item] = item } 优点 只有一个循环,所以性能很好 缺点 如果数组中出现对象则存在问题(因为对象的属性名不能是对象,遇到会转换为字符串) 如果数组中存在数字10和字符串...11 time.formatTime('{0}年{1}月{2}日') // 2020年01月01日 获取DOM标签的方式 document.getElementById getElementById方法的上下文只能是

3.4K40

JS常用方法-数组篇

会改变原数组的方法 以下七种: push(),pop(),shift(),unshift(),splice(),sort(),reserve(),我自己比较常用的有unshfit(),splice()...01 - 添加数组元素方法 push()方法: 在数组结尾处向数组添加一个新的元素(其余元素索引未改变),参数为被添加元素 let fruits = ['苹果','香蕉','橘子'] fruits.push...'] 返回值为改变后新数组的长度 let fruits = ['苹果','香蕉','橘子'] let x = fruits.push('西瓜') // x的值为4 unshift()方法...对每个数组项进行操作 forEach(): 遍历数组的每个元素参数:第一个为每个元素,第二个为该元素索引号,第三个为数组本身常用的为前两个参数接受回调函数对数组进行操作 let.../ [98, 57, 87] reduce(): 可以用统计符合条件元素总数参数:第一个为总数(初始值/先前返回值),第二个参数为每个元素,第三个参数为元素索引号,第四个参数为数组本身常用的为前两个参数

1.9K10

JS常用方法完结 7

b.reverse()); console.log("如何截取数组中指定范围内容"); let arr666=[1,2,3,4,5,6]; let qq=arr666.slice(0,2);//这个方法是获取截取的内容的...// // slice方法是包头不包尾(包含起始位置, 不包含结束的位置) console.log(qq); console.log("如何查找元素在数组中的位置"); let arr...= [1, 2, 3, 4, 5, 3]; // indexOf方法如果找到了指定的元素, 就会返回元素对应的位置 // indexOf方法如果没有找到指定的元素, 就会返回-1...// 注意点: indexOf方法默认是从左至右的查找, 一旦找到就会立即停止查找 let m=arr.indexOf(3);//找元素3 let n=arr.indexOf...arr.indexOf(3,4); console.log(x); console.log("lastIndexOf"); // 注意点: lastIndexOf方法默认是从右至左的查找

58810

JS数组常用方法大全

数组的方法有数组原型方法,也有从object对象继承来的方法常用方法: join 数组转字符串 split 字符串转数组 push 将数据添加到数组尾部 pop 数组末尾移除最后一项 shift 删除原数组第一项...filter 遍历数组,返回符合条件的数组,无则返回空数组 map 遍历数组,返回一个新数组,不改变原数组 forEach 遍历数组,对数组中的每一个元素执行一次回调函数,无返回值 for in 一般常用来遍历对象或...json for of 数组对象都可以遍历,遍历对象需要通过和Object.keys() for in 循环出的是key,for of循环出的是value 基本功能 1.join( ) join(separator...太多不怕,常用参数只有prev、cur 举例: //原始数组 var arr = [3,9,4,3,6,0,9]; a.求数组项之和 var sum = arr.reduce(function (prev...(elem){ return elem>5; }); console.log(ar);//6 console.log(arr);//[1,2,3,4,5,6,7] //根据一个id筛选出对象数组中的一个对象

2.9K30

js数组常用方法总结

最近工作中经常用到数组操作,每次都傻傻不知道怎么用,今天有时间整理了一下,希望对大家有帮助!这些基础的知识,要熟记于心。 1、 join() 功能:将数组中所有元素都转化为字符串并连接在一起。...:类似数组的对象和可遍历的对象  输入:待转换的对象,第二个参数可选,作用类似于数组的map方法,用来对每个元素进行处理,将处理后的值放入返回的数组。 ...输入:无  输出:遍历器对象  1 for (let index of ['a', 'b'].keys()) { 2 console.log(index); 3 } 4 // =>0 5...entries()) { 14 console.log(index, elem); 15 } 16 // =>0 "a" 17 // =>1 "b" 如果不使用for…of循环,可以手动调用遍历器对象的...next方法,进行遍历。

4.9K30

js数组常用方法详解

接着之前数组常用方法详解(一)第二部分介绍数组剩下的一些常用方法 2.12 *** concat() concat()方法可以在现有数组全部元素基础上创建一个新数组,它首先会创建一个当前数组的副本,然后再把它的参数添加到副本末尾...slice()方法可以接收一个或两个参数:返回元素的开始索引和结束索引。如果只有一个参数,则slice()会返回该索引到数组末尾的所有元素。...其中元素是数组中当前搜索的元素,索引是当前元素的索引,而数组就是正在搜索的数组这两个方法都从数组的最小索引开始。...some(): 对数组每一项都运行传入的函数,如果有一项函数返回 true,则这个方法返回 true。...以上就是数组的一些常用方法和属性,对一些我认为比较重要且常用方法我都会在标题处加上 *** ,希望可以帮助到各位,谢谢!

1.4K30
领券