var arr = [1,2,3,4,5]
//reduce(function(total,currentItem,(currentIndex),(arr)){/*code..*/},initialValue)
var sum = arr.reduce(function(sum,item,index,arr){
return sum+item
},4);
console.log(sum) //19
var str = '/a/bcd/e'
//如果没有找到对应字符,则返回-1 ,判断数组或字符串中是否存在某个mjz8499元素
//对大小写敏感
console.log(str.lastIndexOf('/',4)) //=>2 //从下标为4的字符开始查找/,输出2
console.log(str.indexOf('/',4)) //=> 6 区别:lastIndexOf返回的下标是从指定的起始位置开始算,而indexOf是从0开始算,如果找不到都返回-1
//对数组也适用
var arr = ['a','b','c','ab'];
var index = arr.indexOf('ab',2) // => 3
//Array prototype
function my_max(){
var max = this[0]
for(var i = 1; i < this.length; i++){
if(this[i] > max){
max = this[i]
}
}
return max
}
Array.prototype.max = my_max;
var array = [1,3,4,2]
var arr = new Array(7, 1, 3, 11, 25, 9);
// console.log(arr.max())
//Array from 把字符串或伪数组转换为数组
var charArr = Array.from('abc') //=>['a', 'b', 'c']
var obj = {
0: 'd',
1: 'e',
2: 'f',
'length': 3
}
var objArr = Array.from(obj)// => ['d','e','f']
var arr = Array.from([1,2,3], function(x){
// console.log(x) //1 2 3
})
//箭头函数
arr = Array.from([1,2,3],x => x*10) // => [10,20,30]
//Array of
var a1 = Array.of(1,2,3) //=> [1,2,3]
//使用Array.of与new Array之间的差异
var a2 = Array.of(3) //[3] a2.length = 1 a2[0] = 3
var a3 = new Array(3) //[undefined×3] a3.length = 3
//Array.concat
var a, b, c, d;
a = new Array(1,2,3)
b = 'dog'
c = new Array(42, 'cat')
d = a.concat(c) //=>[1,2,3,42,'cat']
d = a.concat(c,b) //=> [1,2,3,'dog',42,'cat']
//参数可以为多个
//Array.fill
//arr.fill(value,start,end)
//start可选,默认为0,end可选,默认arr.length
var a = [0,0,0].fill(7,1,2); //=> [0,7,0]
a = [0,0,0].fill(7,1) //[0,7,7]
a = [0,0,0].fill(7) //=>[7,7,7]
//Array.filter
//返回值为回调函数返回true的所有值的新数组
var arr = [5,'a',10,'b',true]
var result = arr.filter(function(value){
return (typeof value === 'string')
}) //=> ['a', 'b']
//Array.join
var arr = new Array(1,2,3)
var joinarr = arr.join('-') // => "1-2-3"
joinarr = arr.join() // => "1,2,3"
joinarr = arr.join("") // => "123"
joinarr = arr.join(" ") // => "1 2 3"
//Array.pop
var arr = [1,2,3]
var a = arr.pop(); // => 3 arr = [1,2]
a = arr.push(5,6,7); // => 4 返回arr的长度
//Array.reverse
var arr = [1,2,3]
a = arr.reverse(); //=> [3,2,1] arr= [3,2,1]
//Array.slice
arr = [1,2,3,4]
a = arr.slice(1,3)//=>[2,3] arr不变
a = arr.slice(1) //=>[2,3,4] 省略end,默认到数组结尾
a = arr.slice(-2) //[3,4] 参数为负数时,实际值为该参数+arr.length
//Array.splice
var myarr = [1,2,3,4,5]
var result = myarr.splice(2,2,'a','b') // result => [3,4] , myarr=>[1,2,'a','b',5]
result = myarr.splice(2,0,'c') // myarr=>[1,2,'c','a','b',5] , result = []
//返回切割掉的数组
result = myarr.splice(1,3) //myarr=>[1,'b',5] , result = [2,'c','a']
//Array.some 判断数组中的任意元素是否满足指定的回调函数的条件
arr = [1,2,3,4,5]
res = arr.some(function(value,index){
return value%2 == 0;
}) // => true
//Array.sort
arr = new Array(4,11,2,10,3,1)
res = arr.sort(); //res,arr=>[1,10,11,2,3,4] 按照ASCII码排序 arr已排序好
//使用一个比较函数作为排序参数
arr = new Array(4,11,2,10,3,1)
res = arr.sort(function(first, second){
if (first == second) return 0; //= 就是0
if (first < second) return -1; //< 负值
else return 1; //>正值
}) // res,arr => [1,2,3,4,10,11]
//Array.toString
arr = [1,2,3,4]
res = arr.toString() // "1,2,3,4"
//Array.shift 从数组中移除第一个元素并返回该元素
var arr = [1,2,3]
a = arr.shift(); //=> 1 arr=[2,3]
//Array.unshift 在数组开头插入新元素,返回新数组长度
arr = [1,2,3]
a = arr.unshift(0) //arr=>[0,1,2,3] a=>4
//Array.valueOf 无参数 //获取对象原始值
arr = [1,2,3,4]
res = arr.valueOf(); //res=>[1,2,3,4] arr === res =>true
//Array.keys 返回数组的索引值
var k = ["a", "b", "c"].keys();
// k.next().value => 0
// k.next().value => 1
// k.next().value => 2
function myfun(){
this.name = 'calor';
}
var obj = new myfun; //obj.constructor == myfun => true
//所有js对象都有一个只读的prototype属性,可将属性和方法添加到原型中,但不能为对象分配其他原型,但是,可以向用户定义的对象分配新的原型
//Object.create
var newObj = Object.create(null, {
size: {
value: 'large',
enumerable: true
},
shape: {
value: 'round',
enumerable: true
}
});
//Object.getPrototypeOf() //返回对象的原型
function Square(width, height) {
this.width = width;
this.height = height;
}
var mysquare = new Square(3,4);
var proto = Object.getPrototypeOf(mysquare)
proto.color = 'red';
// 判断proto是否存在mysquare的原型链中
res = proto.isPrototypeOf(mysquare)
var arr = [1,2,3]
obj = {'a':1,"b":2}
//String.charAt()返回指定索引处的字符
"abcd".charAt(2) //=>'c'
//String.EndsWith(ch) //判断字符串是否以字符或子字符串ch结尾
"abcd".endsWith("cd") // true
//String.includes(ch) 判断ch是否包含在String中
"abcd".includes("bc") //=> true
//String.repeat(n) //将字符串重复n次
"abc".repeat(2) //=>"abcabc"
//String.replace(reg,str)//将String中满足正则表达式reg的字符或字符串替换为str
"aBbc".replace(/b/ig,"d"); //"addc", /b/ig中,i表示忽略大小写,g表示全局,如果没有g,则只替换掉第一个
//String.search(ch) 返回ch在String中的第一次出现的位置
"abcd".search('c') //=>2
"abBd".search(/b/i) //=>1
//String.substr(start, length) //获取从指定位置开始并具有指定长度的子字符串,length缺省为String.length,为0或负数返回一个空字符串
"abcd".substr(1,2) //=> "bc"
"abcd".substr(1,0) //=> ""
"abcd".substr(1,-1) //=> ""
"abcd".substr(1) //=> "bcd"
//String.substring(start,end) 返回位于String中指定位置的子字符串,其中start和end顺序没有强制,以其中较小的值作为String的起点,如果值为NaN或负数,则将被替换为0
"abcd".substring(1,3) //=>"bc"
"abcd".substring(3,1) //=>"bc"
"abcd".substring(-1,3) // => "abc"
"abcd".substring('a',3) //=> "abc" ,因为Number('a') = NaN
function myfun (a,b,c,d){
// console.log(arguments.length) //在没有调用该函数之间打印0,调用之后打印4
// console.log(myfun.length) //调用前后都打印4
}
myfun(1,2,3,4); //所以两者的区别就是arguments是在函数被调用了才会有结果,而直接使用functionName.length是一直都存在的
//Function.callee属性 返回正在被执行的Function对象,可用做匿名函数递归
(function Foo(){
// console.log(arguments.callee) //=>Foo(){...}
})();
//Function.caller属性 获取调用当前函数的函数 只有当函数正在执行时才被定义
//apply, call, bind
var obj = {
name: 'calor',
say: function(age){
// console.log('i am '+this.name)
// console.log("age:"+age)
}
}
var obj2 = {
name: 'Tom'
}
obj.say.apply(obj2,[20]); //=> i am Tom age:20
obj.say.call(obj2,20); //=> i am Tom age:20
obj.say.bind(obj2)(21); //=> i am Tom age:21
obj.say.bind(obj2,[21])(); //=> i am Tom age:21
obj.say.bind(obj2)([21]); //=> i am Tom age:21
相关推荐
python爬取淘宝数据
python爬取淘宝数据淘宝评论 淘宝评论 打开淘宝,选择打开需要爬取的商品的评论。在谷歌浏览器选择开发者工具,选择network,找到list_detail_rate.htm?itemId=624466733121,点击headers、previews,可以看见相应的评论数据。 爬取一页屏评论代码如下 import re import requests headers = { 'Referer': '在headers中', 'User-Agent': '在
知识学了就忘怎么办?
正文共:1556字不多,耐心读完吧!对于温故知新这一块,我是想用它来着重强调我们在自学中遇到的一个 大问题,那就是“学了就忘”,我相信这是每个自学者都会遇到的一个大问题,...
SSE消息推送避坑指南:从Chrome兼容性到Spring超时配置
本文深入探讨了在Java Spring Boot项目中实现SSE消息推送时,从浏览器兼容性到后端配置的完整避坑指南。针对Chrome并发连接限制、Safari自动断开、Nginx代理缓冲以及Spring SseEmitter内存泄漏与超时管理等生产环境常见问题,提供了具体的解决方案和最佳实践配置,帮助开发者构建稳定可靠的实时推送系统。
第一天学习javascript中遇到的容易忘记的知识点
document.getElementById("demo").innerHTML="新的内容"; //是将id=demo的内容覆盖掉,在id=demo的位置输出“新的内容”; var x= document.getElementById("demo").value; //script用此方法获取id=demo的文本框输入的值 isN
【STM32-DSP库的使用】基于Keil5 + STM32CubeMX + CMSIS-DSP 手动添加、库添加方式
CMSIS-DSP库在工程中应用遇到的所有问题进行归纳终结
「API取数」FDL获取金蝶云星空的单据数据
本文介绍了如何使用FDL实现金蝶云API取数以及如何有效应对复杂的API数据处理场景。
JS你容易忘记的小知识点
var a = 10 var b = 20 let c = a a = b b = c console.log(a,b);//20,10 a = a + b //30 b = a - b//10 a = a - b//20 var [b,a] = [a,b] console.log(a,b);//20,10
汽车IVI中控开发入门及进阶(47):CarPlay开发
车载信息娱乐(IVI)系统已经从仅仅播放音乐的设备发展成为现代车辆的核心部件。除了播放音乐,IVI系统还为驾驶员提供导航、通信、空调、电源配置、油耗性能、剩余行驶里程、节能建议和许多其他功能。驾驶座逐渐变成了你家和工作场所之外的额外生活空间。2014年,苹果推出了Apple CarPlay,这是一款汽车界面,允许驾驶员使用iPhone应用程序和其他IVI功能,如苹果地图、Siri、苹果音乐、iMessage,并拨打电话。
记录一些容易忘记的JavaScript知识点(一)
最近在努力学前端,努力补充知识中,在此记录一些容易被自己忽略的点:下面的代码来自《学习javascript数据结构与算法》这本书籍var myVariable='global', myOtherVariable='global'; function myFunction(){ var myVariable='local'; return myVariable; } func...
FPGA/IC 秋招笔试/面试题总结(续)
FPGA/IC 秋招笔试/面试题总结(续)来啦… 文章目录二十七、状态机1. Moore/Mealy状态机2.一、二、三段式状态机 二十七、状态机 1. Moore/Mealy状态机 (1)Moore状态机: 输出只由当前状态决定,即次态=f(现态。输入),输出=f(现态) Moore型状态机的输出信号是直接由状态寄存器译码得到的。 Moore型状态机检测序列1101如下 Moore型状态机输出函数只由状态变量决定,想要输出Z=1,必须S4状态形成,即寄存器中的1101都打进去后才可以。输出Z=1会在
uniapp - 超详细实现播放 svg / svga 格式动画组件插件,用于直播间赠送礼物特效动画或项目动画特效较多的应用(新手小白保姆级教程,提供插件+详细运行示例+使用文档+注意事项+格式说明)
uniappsvga,uniapp播放svga动画,uniapp中使用svga动画详细教程,uniapp播放svga的插件,uniapp有没有调用svga格式动画的组件插件,uinappH5App小程序全端兼容的svga播放器免费好用插件,uniapp好用的svga格式动画插件,在uniapp中使用SVGAPlayer播放svga动画,uniapp中使用svga动画,编译到apph5,uniapp运行svg动画,uniapp怎么使用svga文件格式,uniapp播放svg格式的动画教程,un
廖雪峰javascript教程学习笔记
主要是总结了讲到的一些要点,小部分自己的理解,方便以后忘了能够记起一些,教程在这里->廖雪峰Javascript教程学习笔记,click here! click here!
分级 API Key 的使用案例
分级 API Key 的使用案例 1. 背景介绍 1.1 问题由来 随着网络服务的普及,API(Application Programming Interface,应用程序编程接口)成为了连接不同系统和应用的关键桥梁。API Key(API密钥)
JavaScript实现忘记密码功能
摘要 本文将详细介绍如何使用HTML、CSS和JavaScript实现一个完整的忘记密码功能。我们将创建用户界面,允许用户输入他们的用户名或电子邮件,并通过发送邮件来重置密码。这个过程包括监听输入框的变化,验证输入的有效性,以及触发发送重置密码的链接。 一、HTML部分 首先,我们需要创建一个HTML页面来收集用户输入的用户名或电子邮件,并显示操作结果。 HTML代码示例: <!DOCTYPE html> <html> <head>
Camera2Demo
在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作
假人有限元模型
假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用
js容易混淆或忘记的知识小总结(一)
1、相等: 绝对相等(值和类型都一样):=== 相等(值一样):== 不等:!= 2、判断空: !! 后加非空字符串、非零数值、非空对象 返回 true; 后加空字符串、0、null 返回false 3、判断类型 typeof instantof
jre9下载 jdk9
(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】
JavaScript大师必须掌握的12个知识点
既然你对这篇文章感兴趣,我想你应该是一位前端开发,也许你有一份不错的工作、自主创业甚至是一位自由从业者。不知你的前端技术如何,也许你是一位新手,亦或是一位资深开发。如果你想让自己成为一个 JavaScript 大师,在此我列出 12 条必备知识: 1. 控制流(Control Flow) 我们从最基础的开讲。当然,它也是最重要的一个知识点。如果你连这个都没有整明白的话,那你的代码生活...
老版QQ原生表情gif动态
这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。
js必须掌握的知识点,javascript总结笔记
JavaScript 最开始是专门为浏览器设计的一门语言,但是现在也被用于很多其他的环境。如今,JavaScript 已经成为了与 HTML/CSS 完全集成的,使用最广泛的浏览器语言GPT改写。有很多其他的语言可以被“编译”成 JavaScript,这些语言还提供了更多的功能。建议最好了解一下这些语言,至少在掌握了 JavaScript 之后大致的了解一下。我们可以正常地从 Error 和其他内建的 error 类中进行继承,。我们只需要注意 name 属性以及不要忘了调用 super。
JavaScript常用知识点笔记
主要内容有JavaScript、BOM、DOM、ES6、jQuery等常用知识点
JS知识点总结(全)
JS基础知识点总结 提示:有一些点没有展开,有问题的地方小伙伴们自己展开哦。 一、变量类型和计算 变量类型:undefiened、String、number、boolean、object({},[],null)、function() 引用类型(a、b指针指向一个地址):对象、数组、函数 变量计算(强制类型转换):字符串拼接、== 中运算符(100 ’100’ //true, 0’ ‘ //true, null == undefined //ture)、if(a)、逻辑运算符 注意:0、false、unde
由浅入深,66条JavaScript面试知识点
前言 我只想面个CV工程师,面试官偏偏让我挑战造火箭工程师,加上今年这个情况更是前后两难,但再难苟且的生活还要继续,饭碗还是要继续找的。在最近的面试中我一直在总结,每次面试回来也都会复盘,下面是我这几天遇到的面试知识点。但今天主题是标题所写的66条JavaScript知识点,由浅入深,整理了一周,每(zhěng)天(lǐ)整(bù)理( yì)10条( qiú)左(diǎn)右(zàn), 希望对正在找工作的小伙伴有点帮助,文中如有表述不对,还请指出。 HTML&CSS: 浏览器内核
Javascript中一些经常忘记的基础知识
今天终于静下心来,决定整理一下自己从学js以来容易忘记的知识点。基础是万丈高楼的核心。而后的每一处失败都是基础不够好导致的问题, 加油。 1.substring()---字符串的方法 ----返回指定索引区间的子串: var s = 'hello, world's.substring(0, 5); // 从索引0开始到5(不包括5),返回'hello's.substring...
JavaScript 前端面试知识点总结
本部分主要是笔者在复习 JavaScript 相关知识和一些相关面试题时所做的笔记,如果出现错误,希望大家指出!js 一共有五种基本数据类型,分别是 Undefined、Null、Boolean、Number、String,还有在 ES6 中新增的 Symbol 和 ES10 中新增的 BigInt 类型。Symbol 代表创建后独一无二且不可变的数据类型,它的出现我认为主要是为了解决可能出现的全局变量冲突的问题。
熬夜总结50个JS的高级知识点,全都会你就是神
前言 大家好,我是林三心,基础是进阶的前提,上一篇,我给大家分享了我这一年来平时记录的工作中碰到的50个JS基础知识点,今天就给大家分享一下,我这一年来,工作中遇到的50个JS高级知识点吧!!! 知识点 1、undeclared 与 undefined 的区别? undefined:声明了变量,但是没有赋值 undeclared:没有声明变量就直接使用 vara;//undefined b;//bisnotdefined 2、let & const...
JavaScript-JS知识点
目录--便于查找(开始撸码) 1_JavaScript的引入 2_JavaScript的语法_变量 3_JavaScript的语法_基本数据类型 4_JavaScript的语法_引用数据类型 5_JavaScript的语法_运算符 6_JavaScript的语法_JS的布尔运算规则 7_JavaScript的语法_语句 8_JS中的函数 9_JS中的事件 10_JS中的事件_页面加载事件 11_...
JavaScript 基础核心知识点总结:从使用方式到核心语法
本文系统梳理了JavaScript基础语法与核心概念,包括三种使用方式、DOM堵塞问题、调试方法和数据类型。重点解析了内部引入、外部引入和行内引入的特点及适用场景,并提供了DOM加载问题的两种解决方案。文章还介绍了alert()、开发者工具和console.log()三种调试方法,以及JavaScript弱类型语言的特性。通过清晰的代码示例和对比表格,帮助开发者快速掌握JS基础知识框架。
【JavaScript】基础知识点总结
哈哈哈哈,刚开始学JS本篇文章只是想总结一下自己不太清楚的知识点,都是特别特别基础的一些 \color{silver}{哈哈哈哈,刚开始学JS本篇文章只是想总结一下自己不太清楚的知识点 ,都是特别特别基础的一些~~~~~}哈哈哈哈,刚开始学JS本篇文章只是想总结一下自己不太清楚的知识点,都是特别特别基础的一些 &nbs...
5800



被折叠的 条评论
为什么被折叠?



