西部数据

https://item.jd.com/3564471.html#none

打算买一个大硬盘记录代码片段、开发项目、开发工具、电影游戏等……

  1. /**
  2. * 获取100天后的日子
  3. * 用来做计划是极好的
  4. */
  5. var d = new Date()
  6. d.setDate(d.getDate() + 100)
  7. console.log(d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate())
  1. /**
  2. * @func
  3. * @desc jsonp的基本使用函数
  4. * @params {object} urlObj
  5. * @params {string} urlObj.url - jsonp的请求地址
  6. * @params {string} urlObj.jsonpCallback - jsonp的回调函数命名
  7. * @params {function} callback - 要执行的回调函数
  8. */
  9. function jsonp(urlObj, callback) {
  10. let url = urlObj.url;
  11. let callbackName = urlObj.jsonpCallback;
  12.  
  13. // 先定义一个全局函数,供jsonp调用
  14. window[callbackName] = function(data) {
  15. window[callbackName] = undefined;
  16. document.body.removeChild(script);
  17. callback(data);
  18. };
  19.  
  20. // jsonp的原理,插入一个script标签,并且执行上面的全局函数
  21. let script = document.createElement('script');
  22. script.src = url;
  23. document.body.appendChild(script);
  24. }
  25.  
  26. /**
  27. * js随机数
  28. * 如获取1-21之间的随机数
  29. */
  30. parseInt(Math.random() * 21 + 1);
  1. /**
  2. * @func
  3. * @desc - 获取当前系统的型号
  4. */
  5. var getSys = function () {
  6. var sys = ''
  7. if (navigator.userAgent.match(/(iPad|iPhone)/)) {
  8. sys = 'IOS';
  9. } else if (navigator.userAgent.match(/(Android)/)) {
  10. sys = 'Android';
  11. }
  12. return sys;
  13. }
  14.  
  15. /**
  16. * @func
  17. * @desc - 从url地址中根据参数获取指定的值
  18. * @param {string} name - 参数
  19. * @param {string} url - url
  20. */
  21. var getUrlParam = function (name, url) {
  22. if (!url) url = location.href;
  23. var paraString = url.substring(url.indexOf("?") + , url.length).split("&");
  24. var returnValue;
  25. for (var i = ; i < paraString.length; i++) {
  26. var tempParas = paraString[i].split('=')[];
  27. var parasValue = paraString[i].split('=')[];
  28. if (tempParas === name)
  29. returnValue = parasValue;
  30. }
  31. if (!returnValue) {
  32. return "";
  33. } else {
  34. if (returnValue.indexOf("#") != -) {
  35. returnValue = returnValue.split("#")[];
  36. }
  37. return returnValue;
  38. }
  39. }
  1. /**
  2. * @func
  3. * @desc - 获取手机归属地信息
  4. * @param {string} phoneNo - 手机号码
  5. * @param {string} callback - 回调函数
  6. */
  7. var getPhoneData = function(phoneNo, callback) {
  8. $.ajax({
  9. url: 'http://tcc.taobao.com/cc/json/mobile_tel_segment.htm',
  10. type: 'get',
  11. data: {
  12. tel: phoneNo
  13. },
  14. success: function(result) {
  15. if (result) {
  16. var _data = result.split('=')[]
  17. _data = _data.replace(/\s+/g, "").replace(/<\/?.+?>/g, "").replace(/[\r\n]/g, "").replace(/\'/g, '"').replace(/\:/g, '":').replace(/\,/g, ',"').replace('{', '{"')
  18. var phoneData = JSON.parse(_data);
  19. console.log(phoneData)
  20. if (phoneData.catName === '中国移动') {
  21. applyData.PhoneType = ;
  22. } else if (phoneData.catName === '中国联通') {
  23. applyData.PhoneType =
  24. } else if (phoneData.catName === '中国电信') {
  25. applyData.PhoneType =
  26. } else {
  27. applyData.PhoneType =
  28. }
  29. applyData.PhoneAddress = phoneData.province
  30. }
  31. },
  32. error: function(result) {
  33. console.info('无法获取手机归属地信息');
  34. },
  35. complete: function() {
  36. typeof callback === 'function' && submitApply();
  37. }
  38. })
  39. }
  1. /**
  2. * @func
  3. * @desc - 常用的闭包使用技巧。使_cache像吸血鬼一样活在函数(闭包)内。同时不会污染全局,也不会被修改到
  4. */
  5. var Cache = (function () {
  6. var _cache = {};
  7.  
  8. return {
  9. getCache: function (key) {
  10. return _cache[key]
  11. },
  12. setCache: function (key, value) {
  13. _cache[key] = value;
  14. }
  15. }
  16. }());
  1. /**
  2. * @func
  3. * @desc - 灵活使用闭包的概念。
  4. 以下简单的实验说明他们是不同的实例。所以他们各自闭包内的_cache是不相干也不相同的
  5. 其实是简单的类与实例的概念。但还是说明一下比较好
  6. 毕竟大部分的插件也是这样制作的
  7. */
  8. var Cache = (function () {
  9. var _cache = {};
  10.  
  11. return {
  12. getCache: function (key) {
  13. return _cache[key]
  14. },
  15. setCache: function (key, value) {
  16. _cache[key] = value;
  17. },
  18. showAllCache: function () {
  19. console.log(_cache);
  20. }
  21. }
  22. });
  23.  
  24. var a = new Cache();
  25. a.setCache('foo', 'bar');
  26. a.showAllCache();
  27.  
  28. var b = new Cache();
  29. b.setCache('foo', 'bar2');
  30. b.showAllCache();
  31.  
  32. /* 从输出的结果得知两者的闭包互不相干 */
  1. /**
  2. * 0-50
  3. */
  4. ~~( + Math.random() * )
  1. /**
  2. * Android 输入法键盘 和 input 问题
  3. */
  4. if(getSys() === 'Android') {
  5. window.addEventListener("resize", function() {
  6. if(document.activeElement.tagName=="INPUT" || document.activeElement.tagName=="TEXTAREA") {
  7. window.setTimeout(function() {
  8. document.activeElement.scrollIntoViewIfNeeded();
  9. }, );
  10. }
  11. })
  12. }
  1. let n = s.toString().replace(/[\`~!@#$^&*()=\-\|{}':;'\\,\[\].<>\?~!@#¥……&*()——|{}【】‘;:”“'。,、?]/g, '')

random任意值到任意值范围

  1. var a = parseInt(Math.random()*(99999999 - 10000000 + 1) + 10000000,10);
    // ~~(Math.random() * (99999999 - 10000000 + 1) + 10000000);
  2. console.log(a, a.toString().length)
  1. /**
  2. * @desc - 生产1W条8位的数字.使用了es6的set。
  3. * set的特性是不允许重复的值存在。利用这个特性来剔除重复的值
  4. */
  5. var _set = new Set();
  6. while(_set.size != 10000) {
  7. _set.add(~~(Math.random() * (99999999 - 10000000 + 1) + 10000000));
  8. }
  9.  
  10. /**
  11. * @desc - 规则策略类
  12. **/
  13. var rule = function (v) {
  14. // 截取后4位
  15. var $_v = v.toString().substr(-4, 4);
  16. // 切割为数组方便判断使用
  17. var $_arr = $_v.split('');
  18. return {
  19. 'AAAA': function () { return $_arr[0] == $_arr[1] && $_arr[1] == $_arr[2] && $_arr[2] == $_arr[3]},
  20. 'AABB': function () { return $_arr[0] == $_arr[1] && $_arr[2] == $_arr[3]},
  21. 'ABAB': function () { return $_arr[0] == $_arr[2] && $_arr[1] == $_arr[3]},
  22. 'not' : function (n) { return $_v.indexOf(n) < 0}
  23. }
  24. }
  25.  
  26. var myarr = []
  27. // 使用了es6迭代器专用的遍历
  28. for (var v of _set.values()) {
  29. // 获取规则
  30. var _rule = new rule(v)
  31. // 判断是否通过规则
  32. if (_rule.not(4) && (_rule.AAAA() || _rule.AABB() || _rule.ABAB())) {
  33. myarr.push(v)
  34. }
  35. }
  36. console.log(myarr)

Wd 西部数据的更多相关文章

  1. [转]将西部数据 My Passport Wireless 移动存储连接到任何支持的云存储上

    原文标题:对西部数据 My Passport Wireless 移动存储进行 Linux 魔改 原文链接:https://linux.cn/article-8246-1.html 虽然 WD My P ...

  2. 再战希捷:西部数据透露96层闪存已用于消费级SSD

    导读 96层堆叠3D NAND闪存已经成为行业主流,包括西部数据这样的传统机械硬盘大厂,也在逐步普及96层闪存,并已经用于消费级SSD. 96层堆叠3D NAND闪存已经成为行业主流,包括西部数据这样 ...

  3. [转帖西部数据的Zonefs将会登陆Linux 5.6内核]

    西部数据的Zonefs将会登陆Linux 5.6内核 https://www.cnbeta.com/articles/tech/948875.htm 据说SMR 能够提高25%的存储密度 但是会造成严 ...

  4. [故障处理]西部数据wd elements xp 无法识别

    百度后,看到如下帖子,供需要的朋友参考,黑体字为本人修改添加: http://blog.sina.com.cn/s/blog_539747670102w62w.html 经咨询WD厂商(厂商电话800 ...

  5. 西部数据出现“WD SES Device USB Device”怎么办,而且说明书全是英文。

    您好.wd ses device driver这个驱动程序可以在baidu中输入关键词找到,什么驱动之家.驱动人生之类的专业驱动网站也都是有的. western digital的移动硬盘驱动程序安装步 ...

  6. 转:西部数据NAS设备hack

    通过该文学习一下常见硬件web漏洞.重点关注一下几个方面: 1.登录验证代码: 2.文件上传代码: 3.system/exec/popen等是否存在注入可能: 4.调用二进制文件: 5.未登陆可以访问 ...

  7. IIS6添加5.3.27 /西部数据网站管理助理升级php

    下载并安装IIS FastCGI 下载地址:http://www.iis.net/download/fastcgi. 选择 x86或者download x86,下载下来名称为 fcgisetup_1. ...

  8. 选择 Delphi 2007 ( CodeGear Delphi 2007 for Win32 Version 11.0.2837.9583 ) 的理由

    选择 Delphi 2007 ( CodeGear Delphi 2007 for Win32 Version 11.0.2837.9583 ) 的理由 我不喜欢用InstallRite的全自动安装包 ...

  9. 外网远程顶级域名连接群晖的WebDAV文件服务映射盘符

       外网远程顶级域名连接群晖的WebDAV文件服务映射盘符 https://www.cnblogs.com/delphixx/p/11846546.html 电子文件管理规范   1.手机拍照截屏 ...

随机推荐

  1. .net core 发布iis 错误

    点击iis功能,例如 点击log日志,提示xxx路径下的web.config错误 百度之后 安装NET Core Windows Server Hosting ->DotNetCore.2.0. ...

  2. AC日记——算术天才⑨与等差数列 bzoj 4373

    4373 思路: 判断一个数列是否是等差数列: 1,最大值减去最小值==(区间个数-1)*k: 2,gcd==k: 3,不能有重复(不会这判断这一条,但是数据水就过了): 来,上代码: #includ ...

  3. POJ 3624.Charm Bracelet-动态规划0-1背包

    Charm Bracelet Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 47876   Accepted: 20346 ...

  4. Codeforces 832 B. Petya and Exam-字符串匹配

    补的若干年以前的题目,水题,太菜啦_(:з」∠)_    B. Petya and Exam   time limit per test 2 seconds memory limit per test ...

  5. Gym - 101194F(后缀数组)

    Mr. Panda and Fantastic Beasts 题意 给出若干个字符串,找到一个最短的字典序最小的字符串且仅是第一个字符串的子串. 分析 对于这种多个字符串.重复的子串问题一般都要连接字 ...

  6. android如何取消闹铃

    取消闹钟: Intent intent = new Intent(context, TestReceiver.class); PendingIntent pi = PendingIntent.getB ...

  7. Sql性能检测工具:Sql server profiler和优化工具:Database Engine Tuning Advisor

    原文:Sql性能检测工具:Sql server profiler和优化工具:Database Engine Tuning Advisor 一.工具概要     数据库应用系统性能低下,需要对其进行优化 ...

  8. Persisting iOS Application Data in SQLite Database Using FMDB

    In previous articles we have utilized NSUserDefaults and .NET web services to persist iPhone data. N ...

  9. nodejs处理高并发问题

      做了一个nodejs并发测试,先描述一下环境 数据库mysql,大概两张表,读取第一张表test的数据,拿出来-1,存到第二张testlog表记录一下,用jmeter同事模拟50个请求,结果发现, ...

  10. 五个常用的Linux监控脚本代码

    bash中 2>&1 & 的解释 1.首先,bash中0,1,2三个数字分别代表STDIN_FILENO.STDOUT_FILENO.STDERR_FILENO,即标准输入(一般 ...