js相关
文章平均质量分 54
11
码上流星&洒下星辰
前端领域新星创作者、技术传递力量、传承布道精神、期待你我共同进步
展开
-
vue项目中封装截取页面参数的js文件
【代码】vue项目中封装截取页面参数的js文件。原创 2023-03-29 14:20:46 · 114 阅读 · 1 评论 -
js正则验证大全(你想要的这里都有)
号码相关/数组相关/时间相关/字符相关正则转载 2023-03-27 18:14:33 · 51 阅读 · 0 评论 -
ningx跨域的方案
location ^~/home/{ rewrite ^/home/(.*)/$1 break; proxy_pass https://......;}添加上述代码原创 2021-07-26 15:27:24 · 170 阅读 · 3 评论 -
前端跨域的场景及解决方法
跨域的场景:1.域名不同 (www.yangwei.com 和www.wuyu.com 即为不同的域名)2.二级域名相同,子域名不同 (www.wuhan.yangwei.com www.shenzheng.yangwei.com 为子域不同)3.端口不同,协议不同 ( http://www.yangwei.com 和https://www.yangwei.com属于跨域www.yangwei.con:8888和www.yangwei.con:8080)请求跨域的原创 2021-07-02 10:01:29 · 1020 阅读 · 6 评论 -
null和undefined的区别
null和undefined详细区别以及使用场景原创 2022-11-28 16:29:49 · 85 阅读 · 0 评论 -
关于js中setTimeout循环遇到的问题
第一种var声明变量for(var i=0;i<10;i++){ setTimeout(()=>{ console.log(i) },0)}//输出结果:10个10由于JavaScript是单线程的,按顺序执行,setTimeout是异步函数,它会将 内部函数放到任务队列中,而此时会先将循环执行完毕再执行 内部函数,因此当执行 内部函数时 i 已经等于10了,所以最终会输出10个10第二种let声明变量for(let i=0;i<10;i++){ setTime原创 2022-05-10 17:29:39 · 595 阅读 · 0 评论 -
对象合并的五种方法
Object.assign()同名属性会被覆盖Object.assign种第一个值是目标对象,第二个值是源对象const obj1={a:"1",b:"2"}const obj2={b:"3",c:"4"}const result = Object.assign(obj1,obj2)console.log(result)//a:1 b:3 c:4 obj1中b的值被后面传入的obj2的值给覆盖掉了扩展运算符同名属性会被覆盖使用…扩展运算符合并对象obj1对象在前和在后最后原创 2022-04-22 12:07:35 · 6863 阅读 · 1 评论 -
正则匹配手机号等【常用记录】
【手机号正则表达式】:因为手机号都以1开头,所以通过^1限定以1开头,然后手机号第二位3,5,6,7,8,9,这几个数字,所以通过[3,5,6,7,8,9]来匹配其中的任一数字,最后{9}匹配9个数字(手机号十一位数字减去前俩位)/d。/d 表示匹配数字def phone_num_test(): ph = input("请输入你的电话号码:") pattern = re.compile('^1[356789]\d{9}') num = pattern.match(ph)原创 2022-04-07 10:08:12 · 159 阅读 · 0 评论 -
ES6-ES11相关
学习ES新特性的原因语法简介,功能丰富前端框架上开发应用比较多前端岗位要求 ES6兼容性查看声明变量let方式let声明不允许重复声明一个变量let a = '小明'; let a = '小刚'; //报错let声明的变量会产生块级作用域,{ let a = '小李'}console.log(a)//作用域外无法访问作用域内变量let声明不存在变量提升console.log(b)var b = 2 //undefined变量提升实际执行过程va原创 2022-03-08 17:35:36 · 1190 阅读 · 3 评论 -
复习Ajax
ajax简介ajax全称为Asynchronous JavaScript And XML 就是异步的js和XML,ajax不是一个新的编程语言,而是一种将现有的技术组合在一起使用的新方式ajax特点通过ajax可以在浏览器中向服务器发起异步请求,允许用户通过一些事件来实现局部页面更新,最大特点就是可以通过无刷新获取新的数据ajax缺点没有历史记录,不能回退,存在跨域问题(同源策略);对seo优化不好XML简介xml是一个可扩展语言,被设计用来传输和存储数据,xml和html类似,原创 2022-03-07 17:06:59 · 178 阅读 · 0 评论 -
js实现仿京东放大镜效果
<!DOCTYPE html><html><head> <title>放大镜</title> <meta charset="utf-8"></head><style type="text/css"> *{ margin: 0px; padding: 0px; } body{ width: 1400px; margi原创 2022-03-04 17:11:45 · 300 阅读 · 0 评论 -
js实现简易的ATM取款机
var money = 1000000 //设置初始金额 while(true){ var action = prompt("请输入以下序列号进行操作:\n 1.存款 \n 2.取款 \n 3.查看余额 \n 4.取卡") switch (parseInt(action)){ case 1: var ck = prompt('请输入要存入的金额') if(ck==''){ alert("输入的金额有误") }else{ money+=parseInt(ck.原创 2022-02-20 14:36:32 · 2530 阅读 · 0 评论 -
复习javascript入门到精通
初始javascriptjavascript历史作者是布兰登.艾奇,在网景公司任职期间于1995年利用十天时间完成了对javascript程序的设计,最初发布时候叫livescript后更名为javascriptjavascript是什么javascript是最流行的语言之一,是一种运行在客户端(自己的电脑)的脚本语言,现也可以基于nodejs技术进行服务器编程脚本语言:不需要编译,执行过程中由js引擎逐行进行解释并执行javascript的主要作用最初只是为了实现表单数据动态校验原创 2022-02-15 18:21:05 · 1008 阅读 · 1 评论 -
es6常用方法
let(1)基本用法–块级作用域原本JS只有函数作用域,没有块级作用域。ES6 新增了let变量声明命令,声明的变量仅在块级作用域内有效for循环还有一个特别之处,就是设置循环变量的那部分是一个父作用域,而循环体内部是一个单独的子作用域。for (let i = 0; i < 3; i++) { let i = 'abc'; console.log(i); } // abc // abc // abc(2)不存在变量提升之前由于JS的预处理机制,var命令会发生“变量提升”现象,即原创 2021-08-17 07:33:31 · 3526 阅读 · 2 评论 -
节流防抖详解及代码实现
防抖原理:在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时。适用场景:按钮提交:防止多次提交按钮,只执行最后提交的一次搜索框联想:防止联想发送请求,只发送最后一次输入简易版实现function debounce(func, wait) { let timeout; return function () { const context = this; const args = arguments; clearTimeo原创 2021-09-22 09:42:10 · 1045 阅读 · 1 评论 -
js对象常用方法
for in遍历对象let user = { name: "John", age: 30, isAdmin: true};for (let key in user) { // keys alert( key ); // name, age, isAdmin // 属性键的值 alert( user[key] ); // John, 30, true}检查属性是否存在的操作符 “in”。let user = { name: "John", age: 30 };原创 2021-09-09 12:02:29 · 143 阅读 · 1 评论 -
Json对象和字符串之间的相互转换
例子:1,new Function形式function strToJson(str){ var json = (new Function("return " + str))(); return json;}2,使用全局的JSON对象。JSON.stringify(obj) 将JSON对象转为字符串。JSON.parse(string) 将字符串转为JSON对象格式function strToJson(str){ return JSON.parse(str);}原创 2021-08-25 11:04:46 · 686 阅读 · 2 评论 -
js经典代码题库
运算符系列第一题逗号运算符let a = (1 + 2, 3 + 4);alert( a ); // 7原因:逗号运算符能让我们处理多个语句,使用 , 将它们分开。每个语句都运行了,但是只有最后的语句的结果会被返回。第二题+= / -=运算符的优先级与普通赋值运算符的优先级?let n = 2;n *= 3 + 5;alert( n ); // 16 (右边部分先被计算,等同于 n *= 8)+= / -= / *=运算符的优先级与普通赋值运算符的优先级相同,所以它们在大原创 2021-08-24 12:07:04 · 2696 阅读 · 2 评论 -
将俩个数组转换为对象----键值对应
js写法 var arr=["a","b","c"] var arr1=[100,200,300] var obj={}; for(var i=0;i<arr.length;i++){ { arr1? obj[arr[i]]=arr1[i]:obj[arr[i][0]]=arr1[i][1];} } console.log(obj) }ES6方法简易版【推荐】map,som原创 2021-08-20 09:46:57 · 582 阅读 · 3 评论 -
js常用面试题(三)
1、怎么实现string和number的相互转换String 转换成 Number:Number()、parseInt()、parseFloat()Number 转换成 String:String()、toString()2、获取对象属性[]和.的区别.后面的是这个对象的属性,凡是用.的地方都可以用[] []中括号的内容可以是字符串也可以是变量,基本上[]放的是变量3、null和undefined的区别Null:代表空对象指针。现在没有,将来可能会有undefined:空,未原创 2021-08-11 15:23:14 · 340 阅读 · 3 评论 -
字符串方法
字符串方法slice()字符串截取第一个参数,开始索引(下标),包括开始 //第二个参数,结束索引(下标),不包括结束 截取字符串 var str = “elephant”; var rel = str.slice(0,3); console.log(rel);截取数组 var arr = [2,3,5,8,9]; var result = arr.slice(0,2); console.log(result);split()将字符串分割为数组原创 2021-08-08 21:31:21 · 269 阅读 · 5 评论 -
dom操作
什么是DOMdom全称document object modeljs中可以利用dom对html页面进行操作文档(document)文档表示的就是整个html页面文档对象(object)对象表示把html中的任何部分转换为对象模型进行操作模型(model)使用模型表示对象之间的关系,这样方便我们获取对象绑定事件的方式行内绑定 动态绑定addEventLisrener 事件监听dom获取元素获取元素:1.通过id获取,document.getElementByI原创 2021-08-08 21:27:51 · 565 阅读 · 3 评论 -
js中级篇
对象分类1.内置对象:在ES标准中定义的对象,在任何js实现中都可以使用2宿主对象/浏览器对象:由js运行环境提供的对象,目前主要指浏览器提供的对象3自定义对象:由开发人员自己创建如何创建对象new创建对象,如果想创建对象是通过new操作符new Object();创建出来对像字面量是{};使用new关键字调用的函数叫做构造函数,构造函数constructor 构造函数是专门用来创建对象的函数使用typeof查看数据类型返回值是object什么是构造函数1 new关键字1调用2 首原创 2021-08-05 16:00:21 · 420 阅读 · 3 评论 -
js基础篇
JavaScript语法字面量 也叫直接量,就是程序中直接使用的,是变量后面的值变量就是声明一个未知可变的量 变量声明符合unicode编码所有变量符合utf-8的编码都可以标识符命名标准:1.必须是字母,数字,_,¥开头2.以驼峰命名规则3. 首单词小写 后面的单词首字母大写 -*/变量的作用域在函数之外声明的变量,叫做全局变量,因为它可被当前文档中的任何其他代码所访问。在函数内部声明的变量,叫做局部变量,因为它只能在当前函数的内部访问。变量提升Ja原创 2021-08-05 15:02:18 · 327 阅读 · 6 评论 -
js常见面试题(二)
1. js 延迟加载的方式有哪些?1. defer 和 async2. 动态创建 DOM 方式(创建 script,插入到 DOM 中,加载完毕后 callBack)3. 按需异步载入 js2.哪些操作会造成内存泄漏?内存泄漏指任何对象在你不再拥有或需要它之后仍然存在。 垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为 0(没有其他对象引用过该对象),或对该对象的惟一引用是循环的,那么该对象的 内存即可回收。3.讲一下原型链在 JavaScrip原创 2021-07-29 12:03:45 · 246 阅读 · 5 评论 -
浏览器自动刷新window.location.reaload (true) (false) window.location.replace(url)
reload 方法,该方法强迫浏览器刷新当前页面。语法:location.reload([false])默认为falsereplace 方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL。语法:location.replace(URL) 参数: URL...原创 2021-07-28 16:25:22 · 624 阅读 · 4 评论 -
js常见面试题(一)
1.闭包是什么,有什么特性,对页面有什么影响闭包就是能够读取其他函数内部变量的函数。闭包的缺点:滥用闭包函数会造成内存泄露,因为闭包中引用到的包裹函数中定义的变量都永远不会被释放,所以我们应该在必要的时候,及时释放这个闭包函数2.什么是作用域?分为俩种一种是函数局部作用域,一种是全局作用域。定义一个函数就开辟了一个局部作用域,整个 js 执行环境有一个全局作用3.事件委托是什么利用事件冒泡的原理,让自己的所触发的事件,让他的父元素代替执行优点:(1)可以大量节省内存占用,减少原创 2021-07-25 21:07:28 · 872 阅读 · 9 评论 -
数组常用方法
数组方法pop() 方法从数组中删除最后一个元素返回被删除的那个元素push()方法向数组末尾添加元素返回新数组的长度shift()方法从数组首位删除掉一个,并且数组中剩余其他元素下标自动往前调整返回被删除的那一项unshift()方法从数组首位添加,并且数组中其他元素下标依次加一返回新数组的长度join()方法将数组转换为字符串类型跟对象方法中的tostring类似,不同的是join可以在数组每一项后面添加分割符号splice() 方法可用于向数组添加新项(三个参转载 2021-07-24 17:27:21 · 203 阅读 · 2 评论