自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 canvas绘制圆环进度条

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>绘制圆环进度条</title> </head> <body> <div> <canvas id="myCanvas"></canvas>

2017-09-27 17:29:50 733

原创 大数阶乘

小数阶乘#include "stdafx.h"#include <iostream>using namespace std;int main(){ unsigned long long n; cin >> n; unsigned long long i, sum = 1; if (n == 0) return 0; else if (n

2017-09-27 16:29:06 204

原创 canvas arcTo()用法详解

arcTo(x1, y1, x2, y2, radius)arcTo()方法将利用当前端点、端点1(x1,y1)和端点2(x2,y2)这三个点所形成的夹角,然后绘制一段与夹角的两边相切并且半径为radius的圆上的弧线。弧线的起点就是当前端点所在边与圆的切点,弧线的终点就是端点2(x2,y2)所在边与圆的切点,并且绘制的弧线是两个切点之间长度最短的那个圆弧。此外,如果当前端点不是弧线起点,arcTo

2017-09-27 10:11:26 4981

原创 showCase(new String('A'));

value为一个对象<!DOCTYPE html><html><head></head><body><script>function showCase(value){ debugger; switch(value){ case 'A': console.log(' Case A'); break; case 'B': console.log(

2017-09-21 22:27:18 928

原创 检查重复字符串

给定字符串 str,检查其是否包含连续重复的字母(a-zA-Z),包含返回 true,否则返回 false 示例1输入'rattler'输出truefunction containsRepeatingLetter(str) { /*在正则表达式中,利用()进行分组,使用斜杠加数字表示引用, \1就是引用第一个分组(比喻捕获aa或bb才算匹配成功),\2就是引用第二个分组。ht

2017-09-15 23:42:11 391

原创 原型链问题

访问一个对象的方法或者是属性,首先会在该对象中寻找,如果找到则返回,如果没找到,则在其原型链上面向上寻找,直至基原型,如还未找到,则返回undefined。hasOwnProperty判断key是否为对象本身的属性

2017-09-15 23:25:16 406

原创 二进制转换

1.将十进制装换为n进制(var s = num.toString(n);) 获取数字 num 二进制形式第 bit 位的值。注意: 1、bit 从 1 开始 2、返回 0 或 1 3、举例:2 的二进制为 10,第 1 位为 0,第 2 位为 1 示例1 输入 128, 8 输出 1 思路:通过num.toString(2)能直接将num转换为2进制数格式的字符串,利用下标就能

2017-09-15 22:06:11 452

原创 或运算,且运算

返回参数 a 和 b 的逻辑或运算结果 或运算符“||”的运算规则是:如果第一个运算子的布尔值为true,则返回第一个运算子的值,且不再对第二个运算子求值;如果第一个运算子的布尔值为false,则返回第二个运算子的值。(即只要有一个true即为true)function or(a, b) { return a||b; //return a|b?true:false; }且运算符”&&”的

2017-09-15 17:55:32 6131

原创 函数的 length 属性只能得到他的形参个数,而无法得知实参个数。

柯里化是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数的技术。简单理解题目意思,就是指,我们将预定义的函数的参数逐一传入到curryIt中,当参数全部传入之后,就执行预定义函数。于是,我们首先要获得预定义函数的参数个数fn.length,然后声明一个空数组去存放这些参数。返回一个匿名函数接收参数并执行,当参数个数小于fn.lengt

2017-09-15 17:34:26 779

原创 关于arguments

1.每个函数都有一个arguments属性,表示函数的实参集合。2.arguments不是数组而是一个对象,但它和数组很相似,所以通常称为类数组对象,以后看到类数组其实就表示arguments。3.arguments有length属性,可以用arguments[length]显示调用:function func(){ for(var i=0;i<arguments.length;i++){

2017-09-15 15:36:24 316

原创 返回函数

首先执行functionFunction('Hello'),传入参数str,然后返回函数f,f与('world')组合,执行f('world'),传入参数s,f返回str+", "+s,即Hello, world。注意中间的逗号后面有一个空格。

2017-09-15 09:43:30 186

原创 js闭包

1.闭包:如果在函数func内部声明函数inner,然后在函数外部调用inner,这个过程即产生了一个闭包。 在本质上,闭包就是将函数内部和函数外部连接起来的一座桥梁。 2.闭包应用的两种情况——函数作为返回值,函数作为参数传递。 非闭包:function add() { var counter = 0; counter += 1;}add();add();add();

2017-09-12 21:52:31 141

原创 函数传参

function argsAsArray(fn, arr) { /* 调用函数可以使用call或者apply这两个方法, 区别在于call需要将传递给函数的参数明确写出来,是多少参数就需要写多少参数。 而apply则将传递给函数的参数放入一个数组中,传入参数数组即可。 调用函数有3种方式: obj.func(); func.call(obj,args)

2017-09-12 11:41:52 172

原创 找出数组 arr 中重复出现过的元素

输入[1, 2, 4, 4, 3, 3, 1, 5, 3] 输出[1, 3, 4]function duplicates(arr) { /* //法一 var arrCover = [];//用于存档重复的数值 for(var i=0;i<arr.length;i++) { for(var j=i+1;j<arr.length;

2017-09-09 22:28:40 1308

原创 是否改变原数组的常用方法归纳

改变原数组的:shift:将第一个元素删除并且返回删除元素,空即为undefinedunshift:向数组开头添加元素,并返回新的长度pop:删除最后一个并返回删除的元素push:向数组末尾添加元素,并返回新的长度reverse:颠倒数组顺序sort:对数组排序splice:splice(start,length,item)删,增,替换数组元素,返回被删除数组,无删除则不返回

2017-09-09 19:56:29 29240 2

原创 移除数组 arr 中的所有值与 item 相等的元素。不要直接修改数组 arr,结果返回新的数组

题目要求不改变原数组,所以我们可以声明一个数组a用于保存arr中不同于item的值,最后将a返回。 1.pushfunction remove(arr, item) { //声明一个新数组保存结果 var a = []; //循环遍历 for(var i=0; i < arr.length; i++){ //如果arr[i]不等于item,

2017-09-09 19:31:43 2663

原创 京东前端(表格)

<html><head><style type="text/css">body,html{ padding: 0; margin: 0; font-size: 14px; color: #000000;}table{ border-collapse: collapse; width: 100%; table-layout: fixed

2017-09-08 22:43:34 249

原创 导航栏与当前页对应

var urlstr = location.href; //alert(urlstr); $(".rig-head a").each(function () { if ((urlstr + '/').indexOf($(this).attr('href')) > -1 && $(this).attr('href') != '')

2017-09-04 11:11:35 595

原创 onmousedown与onmouseup及onclick事件示例

onmousedown:用户鼠标按下时触发的事件。 onmouseup:鼠标抬起时触发的事件。 onclick:鼠标点击后触发的事件(包含了两个动作,及按下与抬起两个过程。) 示例1:鼠标按下时更换字体背景色,抬起时还原默认颜色。(onmousedown与onmouseup)<!DOCTYPE html><html><head><meta charset="utf-8" /><titl

2017-09-04 10:02:01 3202

原创 求最大价值

思路:1.array[i]和array[j]前后比较 2.考虑前后相等的情况 3.将每天出售的食物依次取出放在result[k]中 #include<iostream>using namespace std;bool func(int *array, int i, int j){ if (array[i] < array[j]) { return true;

2017-09-02 21:58:38 478

原创 repaint和reflow理解总结

repaint(重绘):指的是一种不会影响当前DOM结构和布局的一种重绘动作。 reflow(回流):要发生在 DOM 树被操作的时候,任何改变 DOM 的结构和布局都会产生 Reflow。但一个元素的 Reflow 操作发生时,它的所有父元素和子元素都会放生 Reflow,最后 Reflow 必然会导致 Repaint 的产生。 严重性: 在性能优先的前提下,reflow的性能消

2017-09-02 18:59:58 771

原创 meta标签的功能

1、帮助主页被各大搜索引擎登录;2、定义页面的使用语言3、自动刷新并指向新的页面4、实现网页转换时的动画效果5、控制页面缓冲6、控制网页显示的窗口

2017-09-01 10:11:14 251

原创 交错序列

#include<iostream> using namespace std;int main(){ int n; int pre = -1, sum = 0, current; cin >> n; for (int i = 0; i < n; ++i) { cin >> current; if (current != pre)

2017-09-01 00:00:50 545

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除