常用的js方法合集

发布时间 - 2026-01-11 00:06:38    点击率:

数组及对象深拷贝

var arr = [1,'2',{a:1,b:[1,2]}];
function deepCopy(p, c) {    
 var c = c || {};    
 for (var i in p) {      
 if (typeof p[i] === 'object' && p[i] !== null) {  c[i] = (p[i].constructor === Array) ? [] : {};    deepCopy(p[i], c[i]);      
 } else {         
  c[i] = p[i];      
 }    
 }    
 return c;  
}
var cArr = deepCopy(arr);
console.log(cArr);

获取地址栏参数

function getUrlParam(){
 var _arr = location.search.substr(1).split('&');
 var _obj = {};
 for (var i = 0; i < _arr.length; i++) {
 _obj[_arr[i].split('=')[0]] = _arr[i].split('=')[1]
 };
 return _obj;
}
console.log(getUrlParam());

修改微信title 兼容ios

function changeWxTitle(text){
 var $body = $('body');
 document.title = text;
 var $iframe = $('<iframe src="/favicon.ico"></iframe>');
 $iframe.on('load',function() {
 setTimeout(function() {
  $iframe.off('load').remove();
 }, 0);
 }).appendTo($body);
}

移动端响应式样式

/* 方法使用后会在 head标签添加一个style标签 并且有.my-resize 和 .no-resize的样式,需要适配屏幕的元素加上.my-resize类名即可,.no-resize是还原已适配的元素
 * window.onload = window.onresize = function(){
 *   pageResize({
 *     width : '320',   //默认宽320px 
 *     height : '504',   //默认高504px
 *   })
 *  }
 */
(function pageResize(opt) {
  var ua = navigator.userAgent,
    wp = ua.match(/Windows Phone ([\d.]+)/),
    android = ua.match(/(Android);?[\s\/]+([\d.]+)?/),
    // 设备宽高初始比例
    dw = document.documentElement.clientWidth,
    dh = document.documentElement.clientHeight,
    ds = dw / dh,
    // 页面宽高初始比例
    opt = opt || {},
    pw = opt.width || 320,
    ph = opt.height || 512,
    ps = pw / ph;
    // 核心代码:页面缩放比例
    var sx = dw/pw,
      sy = dh/ph; 
    var css = '.no-resize { -webkit-transform: scaleY('+sx/sy+');transform: scaleY('+sx/sy+'); }.my-resize { width:'+pw+'px !important;height:'+ph+'px !important;-webkit-transform: scale('+sx+','+sy+');transform: scale('+sx+','+sy+'); -webkit-transform-origin:left top;transform-origin:left top;}',
    head = document.getElementsByTagName('head')[0],
    style = document.createElement('style');
    style.type = 'text/css';
    if(style.styleSheet){
      style.styleSheet.cssText = css;
    }else{
      style.appendChild(document.createTextNode(css));
    }
    head.appendChild(style); 
})()

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# js  # 常用  # 方法  # JS截取字符串常用方法详细整理  # js数组去重的常用方法总结  # js String对象中常用方法小结(字符串操作)  # js(jQuery)获取时间的方法及常用时间类搜集  # js中数组Array的一些常用方法总结  # NODE.JS加密模块CRYPTO常用方法介绍  # Js 弹出框口并返回值的两种常用方法  # jquery和javascript的区别(常用方法比较)  # js数组操作常用方法  # 微信中一些常用的js方法汇总  # 会在  # changeWxTitle  # ios  # document  # body  # text  # title  # split  # substr  # _obj  # length  # lt  # iframe  # appendTo  # remove  # head  # resize  # style  # setTimeout  # favicon 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 详解vue.js组件化开发实践  Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】  微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  微信小程序 wx.uploadFile无法上传解决办法  夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化  如何利用DOS批处理实现定时关机操作详解  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  如何在阿里云香港服务器快速搭建网站?  Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】  *服务器网站为何频现安全漏洞?  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框  实现点击下箭头变上箭头来回切换的两种方法【推荐】  java中使用zxing批量生成二维码立牌  如何在Ubuntu系统下快速搭建WordPress个人网站?  如何快速搭建高效WAP手机网站吸引移动用户?  jQuery中的100个技巧汇总  如何在香港服务器上快速搭建免备案网站?  Python进程池调度策略_任务分发说明【指导】  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  HTML 中动态设置元素 name 属性的正确语法详解  如何快速搭建安全的FTP站点?  html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】  香港服务器如何优化才能显著提升网站加载速度?  LinuxCD持续部署教程_自动发布与回滚机制  Laravel怎么清理缓存_Laravel optimize clear命令详解  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  Laravel如何创建自定义Facades?(详细步骤)  Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  Laravel如何处理和验证JSON类型的数据库字段  Laravel如何使用Gate和Policy进行授权?(权限控制)  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  Laravel DB事务怎么使用_Laravel数据库事务回滚操作  Python制作简易注册登录系统  Linux安全能力提升路径_长期防护思维说明【指导】  如何使用 Go 正则表达式精准提取括号内首个纯字母标识符(忽略数字与嵌套)  JS经典正则表达式笔试题汇总  Laravel如何自定义错误页面(404, 500)?(代码示例)  Laravel如何实现API版本控制_Laravel API版本化路由设计策略  Laravel怎么集成Vue.js_Laravel Mix配置Vue开发环境  开心动漫网站制作软件下载,十分开心动画为何停播?  Python文件流缓冲机制_IO性能解析【教程】  php 三元运算符实例详细介绍  利用 Google AI 进行 YouTube 视频 SEO 描述优化  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  简单实现jsp分页  JavaScript如何实现音频处理_Web Audio API如何工作?