前端常见面试题整理第二版

重点面试题目

1.BFC 的形成条件

  1. 简称块级格式化上下文。
  2. 如何形成的 bfc?当元素是浮动元素、绝对定位的元素,以及是非块级盒子的块级元素如*(inline-block、table-cells、table-captions)*最后还有 overflow 的属性不是 visible(他是 overfllow 的默认属性)的块级盒子 ,在这些元素的内部都会创建出一个 BFC。

2. 有这样一个 URL:http://item.taobao.com/item.htm?a=1&b=2&c=&d=xxx&e,请写一段 JS 程序提取 URL 中的各个 GET 参数(参数名和参数个数不确定),将其按 key-value 形式返回到一个 json 结构中,如{a:’1′,b:’2′,c:”,d:’xxx’,e:undefined}。

let url = 'http://item.taobao.com/item.htm?a=1&b=2&c=&d=xxx&e,'

function geturl(url) {
     
  //在外面定义一个空变量用来输出最后的对象
  var obj = {
     }

  //判断这个url里面存不存在参数
  // console.log(url.match(/\?/g));
  if (/\?/g.test(url)) {
     
    //取出?号后面的字符串 这个用的是substring方法 找到?后面的哪一位的索引
    var urlstring = url.substring(url.indexOf('?') + 1)
    console.log(urlstring)
    //之后按 &符号拆分成数组
    var urlarry = urlstring.split('&')
    console.log(urlarry)
    //遍历拆分的数组 之后再把数组按 “=”号拆分
    urlarry.forEach(function (v, i) {
     
      console.log(v, i)
      let z = v.split('=')
      console.log(z)
      //之后拼接起来 把obj返回出去
      obj[z[0]] = z[1]
    })
    // console.log(obj);
    return obj
  }
}
console.log(geturl(url))

3.以下内容输出的结果是什么?

for (vari = 1; i <= 3; i++) {
     
  setTimeout(function () {
     
    console.log(i)
  }, 0)
}
// 输出 4 4 4 因为settiomeout是异步的所以是for循环先执行。
// 如何让上述代码输出 1 2 3呢?
for (var i = 1; i <= 3; i++) {
     
  setTimeout(
    ((function (a) {
     
      console.log(a)
    })(i),
    0)
  )
}
// 只需要让setTimeout里面的函数变成 自执行,或者立即执行函数,然后就可以输出结果 1 2 3 了。 或者改成let 。
// 只有一个作用:创建一个独立的作用域。
//立即执行函数的作用:这个作用域里面的变量,外面访问不到(即避免「变量污染」)

4. 前端查询 UA 信息的方式

  1. navigator.userAgent 可以查询 UA 信息

5. 什么是闭包?闭包的优缺点?

  1. 闭包是一种现象,现象的表现是,当一个存在于另一个函数内部的函数可以访问其外部函数的变量的这种现象被称为闭包。在本质上,闭包就是将函数内部和函数外部连接起来的一座桥梁。
  2. 闭包的优点是,局部变量不会污染全局变量,在全局情况下可以访问其函数内部的变量。可以让变量私有化。
  3. 缺点是,因为形成闭包之后,外部函数中的变量会被内部函数所绑定,所以在函数执行完毕之后,其外部函数内部的作用域不会被销毁,所以变量会一直存在会造成内存泄露的问题。还有影响其系统性能的问题。

6. 什么是原型,原型链?

  1. 每个函数中都存在一个 prototype(原型)这个属性,这个属性是一个指针,指向了一个对象,这个对象拥有所有的原型对象的方法,这个原型对象就是用来给所有的实例共享属性跟方法的。每个实例内部都又存在着一个指向该原型对象的指针(proto),我们可以在实例上调用这个指针来查找到与之对应的原型对象。在其每一个原型对象上又拥有一个 constructor 属性,这个属性值指向这个原型对象的所与之关联的构造函数。每个实例中的 prototype 都指向这个构造函数的原型对象。
  2. proto 与 prototype 的区别?在每一个函数对象里面都拥有着一个函数指针,在实例上找不到 prototype 这个函数指针在标准浏览器之中有着proto指针,这个指针也是指向这个实例的与之相关构造函数的原型对象。也能够找到与之对象的该函数的原型。
  3. 什么是原型链?? 原型链顾名思义是一个链条,因为刚才说过每一个函数中都存在有一个 prototype 属性,这个属性指向与之对应的原型对象,当然原型对象上他也有这个 prototype 属性,他会指向他原型对象的原型对象,当自身实例在自己身上找不到属性的时候,他就会一级一级向自身的原型上去寻找直到找到 object 这个原型对象为止,如果找不到才会停止寻找,这个 object 对象是所有的函数的根原型,一般系统内置的函数中的方法都存在于改对象之中。
  4. 原型、构造函数、于实例的关系?
    他们三者的关系可以这样理解,原型中存在一个 constructor 这个属性指向与他相关的构造函数,构造函数中又存在一个 prototype 属性指向该原型的原型对象,在实例中并不存在 prototype 这个属性只有 proto 这个指针,他跟 prototype 同理,也指向改实例的原型对象。所以三者的关系是实例跟构造函数的指向原型对象。

7. 什么是作用域,作用域链?

  1. 作用域就是指代码执行的时候所处在的环境,而全局执行环境就是指全局作用域,函数执行的环境就被成为局部作用域,他们都在栈内存中开辟新的空间。
  2. 执行环境决定了处在环境中的函数变量是否有权限访问其他的数据,每一个环境都有一个与之相关的变量对象,环境中的定义的变量跟函数都保存在这个对象中。
  3. 全局执行的环境是处在最外部的一个执行环境,根据 ES 实现所处的环境不同,表示执行环境的对象不同:可以有两个对象,在 web 浏览器中,全局环境是指 window 对象,因为所有的全局变量跟函数都是为了 window 所准备的。在 node 环境中,全局环境是指 global 对象。
  4. 在某个环境中,函数执行完毕之后,他所在的环境跟变量会被销毁,但是全局环境的作用域跟变量只会在你关闭页面或者浏览器的时候才会被销毁。所以在 js 中有四个概念:
    私有作用域–>在函数执行的时候形成的一个私有环境,就叫私有作用域。
    全局作用域–>在一个浏览器或者页面一打开的时候就形成的环境,就被成为全局作用域。
    私有变量–>在函数中形成或者定义的变量就是私有变量。
    全局变量–>处在全局作用域或者环境中的变量被成为全局变量。
  5. 什么是作用域链?
    在代码所执行的环境中会给创建变量的对象创造一个作用域链。
    作用域链的前端就是指当前执行代码所处的环境对象。
    作用域的下一级就是来自于改作用域对象的外部环境的下一个对象。一只到最终全局的环境对象。
    作用域链的顶端就是全局作用域环境对象。
    内部环境的变量可以访问其外部环境的变量,反之则不可以。在一个函数访问变量的过程中,首先会在自身查找这个变量,如果自身差找不到则会按照作用域链查找上一级的环境对象。一层层向上寻找直到找到作用域的顶端,全局作用域对象,这种变量寻找机制也就被称为作用域链。
    这样也就说明了为什么在访问变量的时候局部变量的执行速度会被全局变量的执行速度要快的原因。

8. vue 的生命周期?


vue 的生命周期一共有八种状态,创建前/后、载入前/后、更新前/后、销毁前/后。

  1. beforeCreate(创建前)

  在实例完全被创建出来之前,当前只有 watch 对象,el 跟 data 都没有挂载完毕的时候,触发的钩子。

  1. Created(创建后)

  这个时候,实例已经被创建了出来,这时候如果想要触发 method 的函数以及获取到请求数据进行修改数据的时候可以在这个钩子里面进行,这个时候 data 数据已经更新$el 属性目前还没有被挂载。

  1. beforeMount(挂载前)

  在这个阶段 el 以及 data 元素都已经完全准备完毕,虚拟 dom 也准备完毕,但是还没有渲染到页面之中,所以页面中的元素还没有进行更改此时。此时可以拿到 vm.$el,但是是没有更新的旧模板。

  1. Mounted(挂载后)

  这个阶段是实例以及虚拟 dom 都被挂载完毕的阶段,data 以及 el 中的东西都已经被更新渲染到页面上了,也就是用户看到的页面,在这个函数执行完毕之后就代表整个初始渲染都加载完毕了,在这个函数是实例创建期间最后一个生命周期函数。如果想要在这个期间获取到 dom 元素的话,在上面的钩子函数中可以加 vm.$nextTick()函数表示 dom 渲染完毕之后的回调 ,这个回调函数也是发生在 mounted 挂载后前所调用的回调函数。

  1. beforeUpdate(更新前)

msp; 这个期间的钩子表示,数据发生改变的但是 dom 元素还没有改变的期间,这个期间 data 已经被改变了,但是 dom 元素还没有被更新。

  1. Update(更新后)

  这个顾名思义就是发生在虚拟 dom 已经替换掉页面中元素后执行的钩子,表明虚拟 dom 以及数据都已经更新完毕。

  1. beforedestroy(销毁前)

  这个表明在实例销毁前仍然可以使用整个 vue 实例对象,在这个阶段可以销毁定时器等一些操作在销毁后前想要做的最终操作。

  1. destroy(销毁后)

  组件以及整个实例被销毁后触发,这时整个 vue 生命周期结束,vue 实例解除对 dom 的观察以及对数据的绑定,这时候改变数据跟 dom 都没有效果,但是被最终操作后的 dom 结构树依旧存在在页面中。

9. window 常见的三个弹窗的类型以及他们的作用?

  1. alert()弹出一个带有确定按钮的确定框。
  2. comfirm()弹出一个带有确定以及取消按钮的弹出框。
  3. prompt() 弹出一个带有输入框的弹出窗口。

10. $.ajax 请求中常用的一些参数以及参数作用?

  1. data: 请求的数据。
  2. datatype : 期望的服务器返回的数据类型。
  3. type : 请求类型。
  4. contentType : 发送数据的数据类型。
  5. success : 成功的回调。
  6. erro : 失败的回调。
  7. url : 请求的地址。
  8. async : 请求的方式是否是异步。

11. 前置守卫,路由独享守卫,组件内守卫的以及生命周期函数的执行顺序有啥区别?(或者守卫导航解析流程)

  1. 导航被触发。
  2. 在失活的组件里面调用 beforeRouteleave 守卫。(也就相当于是,在一个路由中离开去另一个路由前,调用离开前守卫的那个组件离开守卫)。
  3. 调用全局的 beforeEach 守卫。
  4. 之后调用重用组件的 beforeUpdate 守卫。ps:也就是调用完全局守卫之后,如果存在组件 beforeUpdate 守卫就会首先调用这个守卫。
  5. 之后调用路由独享守卫 beforeEnter。
  6. 之后解析异步路由组件。
  7. 解析完成之后,如果存在组件内守卫,这时才会调用第一个 beforeRouteEnter 守卫。
  8. 调用全局的 beforeResolve 守卫(又称:解析守卫)。ps:他的作用类似于 beforeEach 全局守卫,区别是它是发生在导航被确认之前的,这个是发生在异步路由以及组件守卫都已经被解析确认完毕之后才会触发。
  9. 导航被确认。
  10. 调用全局的 afterEach 钩子。
  11. 触发 Dom 更新。
  12. 调用组件 beforeRouteEnter 守卫中传给 next 的回调函数,创建好的组件实例会作为回调函数的参数传入进去。

追问: 如果加上生命周期,他们与守卫之间的执行顺序是什么样的?

首先:如果是存在上个 url 跳转到另一个 url 的情况,前面会先触发 beforeRouteLeave 守卫。

  1. 导航前置守卫: beforeEach
  2. 如果存在组件复用会先触发组件 beforeUpdate 守卫。
  3. 路由独享守卫:befroeEnter
  4. 组件内部守卫: beforeRouteEnter
  5. 导航解析守卫: beforeResolve
  6. 导航后置守卫: afterEach
  7. 组件钩子: beforeCreate
  8. 组件钩子: created
  9. 组件钩子: beforeMount
  10. deactivated: 离开缓存组件 a,或者触发 a 的 beforeDestroy 和 destroyed 组件销毁钩子。
  11. 组件钩子: mounted 访问跟操作 DOM
  12. 执行 beforeRouteEnter 回调的函数 next()。

12. computed 支持异步,watch 不支持异步。mutition 与 action 区别 也是一个不支持异步 一个支持异步。


13. OSI 模型有那些层? TCP/UDP/HTTP 分别在那些层?

自底向上有:
物理层······· 二进制在物理媒体上传输数据 (ISO2110、IEEE802、IEEE802.2)
数据链路层······· 传输有地址的帧跟错误检测(SLIP、CSLP、PPP、ARP、RARP、MTU)
网络层······· 为数据包选择路由(IP、ICMP、RIP、OSPF、BGP、IGMP)
传输层······· 提供端对端的接口(TCP、UDP)
会话层······· 解除或建立与别的节点的联系(没有协议)
表示层······· 数据格式化,代码转换,数据加密(没有协议)
应用层·······文件传输、电子邮件、文件服务、虚拟终端(TFTP、HTTP、SNMP、FTP、SMTP、DNS、Telhet)


14. 正向代理,与反向代理的区别?


15. 深拷贝与浅拷贝的区别,如何实现深拷贝与浅拷贝?

浅拷贝与深拷贝都是对于引用类型来说的,浅拷贝就是复制对象的引用,浅拷贝如果改变了复制对象的值,那么其源对象的值也会发生改变。,深拷贝就是对象的彻底拷贝,不值拷贝你用类型,也复制了值。只要进行深拷贝就是代表两个对象之间没有了联系。


深拷贝,递归的拷贝:
function deepClone(source) {
     
  const targetObj = source.constructor === Array ? [] : {
     } // 判断复制的目标是数组还是对象
  for (let keys in source) {
     
    // 遍历目标
    if (source.hasOwnProperty(keys)) {
     
      //如果是继承的属性 就返回false 就相当于判断这个属性keys属不属于自身
      if (source[keys] && typeof source[keys] === 'object') {
     
        // 如果值是对象,就递归一下
        targetObj[keys] = source[keys].constructor === Array ? [] : {
     }
        targetObj[keys] = deepClone(source[keys])
      } else {
     
        // 如果不是,就直接赋值
        targetObj[keys] = source[keys]
      }
    }
  }
  return targetObj
}

简单的深克隆 JSON 方式:
let Newtarget = JSON.parser(JSON.stringify(target))
// 这种是简单的深拷贝 但是不能拷贝,function 跟 undefined 类型的值。

16. 用 json 深拷贝有什么问题

json 进行深拷贝,不能拷贝 function,跟 undefined。


17. promise

  1. 主要用于异步计算
  2. 可以将异步操作队列化,按照期望的顺序执行,返回符合预期的结果
  3. 可以在对象之间传递和操作 promise,帮助我们处理队列

18. 内存泄漏

1. 什么是内存泄漏?

  1. 内存泄漏是指程序中分配的内存由于某种原因没有释放成功或者无法释放,导致程序的运行速度减慢等造成严重的卡死效果,内存泄漏是很常见的现象。

2. 内存泄漏的原因

  1. 一种是闭包造成的内存泄漏,其内部变量如果访问外部函数的变量,就会导致闭包的产生,会导致该变量在引用上一直是 1,会导致永远无法被垃圾回收,垃圾回收的机制是:标记计数法,跟引用计数法,在浏览器中一般是使用引用计数法。
  2. 意料之外的全局变量, 比如在非严格模式下在函数中不进行 var 变量,直接写一个变量名赋值,那么该变量就会被变量声明,也会造成内存泄露的问题。
  3. 脱离 DOM 的引用,同样如果 dom 元素存在树这种,另一个在字典中。将来你决定删除这些行的时候,需要把两个引用都同时清除。

19. 查看页面中内存泄漏的方法

1、使用工具 Heap Profiling
①、Heap Profiling 可以记录当前的堆内存(heap)的快照,并生成对象的描述文件,该描述文件给出了当时 JS 运行所用的所有对象,以及这些对象所占用的内存大小、引用的层级关系等等。

②、JS 运行的时候,会有栈内存(stack)和堆内存(heap),当我们 new 一个类的时候,这个 new 出来的对象就保存在 heap 里,而这个对象的引用则存储在 stack 里。程序通过 stack 的引用找到这个对象。例如:var a = [1,2,3],a 是存储在 stack 中的引用,heap 里存储着内容为[1,2,3]的 Array 对象。

③、打开调试工具,点击 Memory 中的 Profiles 标签,选中“Take Heap Snapshot”,点击“start”按钮,就可以拍在当前 JS 的 heap 快照了。
将上图框框切换到 comparison(对照)选项,该视图列出了当前视图与上一个视图的对象差异

New:新建了多少对象
Deleted:回收了多少对象
Delta:新建的对象个数减去回收的对象个数
重点看 closure(闭包),如果#Delta 为正数,则表示创建了闭包函数,如果多个快照中都没有变负数,则表示没有销毁闭包


20. react 生命周期


21. react 销毁的钩子函数有哪些?


22. 性能优化 react


23. react 减少请求次数,实现方式?


24. react 组件传参


25. 解决浏览器缓存

因为浏览器存在缓存机制,而且浏览器的缓存机制是为了防止用户想服务器多次发送相同的请求,机制原理是,当浏览器在第一次访问网站之后会生成一份缓存文件,如果下次访问的时候,文件的路径跟缓存中路径存在重复的情况他就不会重复想服务器发送请求,会从缓存中读取请求。这种机制有优缺点,优点:可以减轻服务器压力 ,提升下次打开网站的时候用户体验。缺点:比如在做验证码功能的时候你需要穿一个参数不停的去改变路径才可以使验证码每次点击都会被刷新。或者在引用 js
等 css 脚本的时候。添加一个版本号。


26. 前端做后台管理遇到问题?

  1. 配置权限的配置问题。
  2. 配置跨域代理,解决遇到跨域请求的问题。

27. vue 和 jquery 区别

  1. vue 是一个框架,jq 是一个类库。
  2. vue 是数据驱动,jq 一般要操作 dom 元素
  3. vue 能使前端项目变得更工程化,具有跨平台的特性。

28. 单页面应用

  1. 单页面应用就是只有一个总的 html 文件,在页面加载的时候只会向服务器发送一次请求。
  2. 单页面应用的特点,通过把整个项目进行模块化拆分,把一个个的模块中所包含的 js,css 跟 html 一起拆分成小模块进行开发,利于项目的维护,跟模块的重新利用,可以减轻代码负担优化项目流程。
  3. 拆分后加载次数比较少,而且通过路由进行跳转的时候性能比较高,不会重复的向服务器端多次发送请求。减轻服务器的压力。

29. 前端插件有哪些?

  1. cookie.js
  2. axios.js
  3. lodashi
  4. swiper
  5. jquey
  6. npm
  7. webpack
  8. gulp
  9. git
  10. sass
  11. less
  12. prerrtic
  13. eslint
  14. bable

30. 数组采用的方法

1. Array.from //把伪数组变成真数组
2. Set() //去除重复数组
3. forEach //数组循环
4. map // 也是遍历,只不过是有返回值
5. filter //数组过滤 return 过滤条件 返回值也是一个数组
6. every // 当所有的元素都满足条件的时候返回一个true 在每次判断的时候都是返回一个布尔值,也是也是一个判断性数组
7. some // 当循环遍历的时候 有一个 为true 直接返回数组
8. indexof //寻找 数组中存在的元素的下标 如果存在返回一 否则返回 -1
9. sort //数组的排序方法 a-b是升序  b-a 是降序 返回值为负数放在前面 正数放在后面 引出冒泡排序的原理
10.

31. 普通函数箭头函数

  1. 普通函数有 this 指向,在非严格模式下。
  2. 箭头函数在任何情况下没有 this 指向。

32. 正则把字符串中的空格替换?


33. for each for of


34. 手动写倒计时


35. 动态引入 js 文件


36. 前端缓存机制?


37. computed watch


37. 手动封装一个 promiseAll 方法

// 定义一个 promise函数
function promiseAll(promises) {
     
  // 在这里直接return 一个promise对象 是为了执行 里面promise函数的
  return new Promise((resolve, reject) => {
     
    // 把两个promise数组对象扔进去 在这里设定一个计时器 来计算promise函数 执行了几个了
    let resultCount = 0
    //这里严格意义要用new array来创建一个 有多少个参数长度的空数组 在后面放值的时候要使用
    let result = new Array(promises.length)
    // new一个空数组是为了 把传进来的promise函数的结果 放在数组中 最后用promise函数 resolve参数接受到 并在最后then出去
    // let result = [];
    for (let i = 0; i < promises.length; i++) {
     
      //循环所有的promise 如果.then执行了 就代表 这个promise对象执行了 用计数器进行计数 并把结果返回到一个新的数组中
      //这里用 对应执行的 promise函数都有着对应的返回值 把他存到数组中
      promises[i].then((res) => {
     
        resultCount++
        // result.push(res);
        // 这里用result[i]来接受 返回值是为了
        result[i] = res
        //这里判断 计数器执行的次数是否跟传进的参数相等,如果相等 就表示 所有的promise执行完毕了 就可以吧结果反悔了
        if (resultCount === promises.length) {
     
          return resolve(result)
        }
        //这里是错误的捕捉 如果发生错误 就返回错误信息
      }),
        (error) => {
     
          reject(error)
        }
    }
  })
}

//测试 测试 测试
let p2 = new Promise((resolve) => resolve('p2'))
let p1 = new Promise((resolve) => resolve('p1'))
// let p3 = Promise.reject('p3 error')

promiseAll([p2, p1])
  .then((results) => {
     
    console.log(results) // ['p1', 'p2']
  })
  .catch((error) => {
     
    console.log(error)
  })

/* promiseAll([p1, p2, p3]).then(results => {
        console.log(results)
        }).catch(error => {
        console.log(error) // 'p3 error'
        }) */

38. 如何把伪数组变成真数组?

arr.form() 把伪数组变成真数组。


39. 怎么取到数组的最小值?

sort 排序 a-b 取第一位 。升序是 b-a 取最后一位


40.JavaScript 是一个弱类型语言他的特点?

优点:弱类型使用简单,更灵活多变。
缺点:在代码的上线稳重,可能会进行隐式类型转换,会稍微损耗性能,可能不符合程序的本意。


41. 如何把伪数组变成真数组?

arr.from() 把伪数组变成真数组并进行浅拷贝类的实例。


42. C++跟 js 有什么区别?

  1. C++是静态语言,js 是动态语言。
  2. C++是编译型语言,js 是解释型语言。
  3. C++有指针,js 无指针。
  4. js 是函数式编程语言,C++不是
  5. C++的继承是基于类的,js 的继承基于原型
  6. js 的一个重要特性是闭包(当前作用域可以访问并保存外部作用域的变量)
  7. js 可以显示的设置上下文

43. 事件传播流程,传播流程的那几个阶段?

• 捕获阶段:事件对象从目标的祖先节点 Window 开始传播直至目标。
• 目标阶段:事件对象传递到事件目标。如果事件的 type 属性表明后面不会进行冒泡操作,那么事件到此就结束了。
• 冒泡阶段:事件对象以一个相反的方向进行传递,从目标开始,到 Window 对象结束。


44. jquery 的事件都有什么,然后 onclick 跟 addeventlistener 的区别?


45. 数组随机取一个数。


46. 取随机十个不重复的数。


47. 什么是二分法?


48. display 的常见属性值?


49. display:none 跟 visbaty:hidden 的区别?


50. css 如何写一个半圆形?


51. 如何让背景图铺满整个屏幕?


52. 如何实现一个元素的旋转?


53. 常见的浏览器内核?


54. css 权重选择器的规则?


55. 图片圆角,border 0 跟 border:none 的区别?


56. es6 的新增语法?


57. 箭头函数,跟普通函数的区别?


58. 图片懒加载


59. 鼠标一上去有一个提示效果?


60. 加载完成之后会触发那个事件?资源文件加载完成之后触发的事件?


61. Set 对象去重,如何实现一个冒泡排序?


62. MVC,跟 MVVM 的区别?


63. http 跟 https 的区别?


64. js 进行编码的方法?


65. 如果有一个非常长的字符串,怎么过滤出某些字符串?


66. 删除对象属性?

使用 delete 删除对象属性。


67. localstroge 跟 seesion 跟 cookie 的区别?


68. Es6 怎么实现继承?promise 有何特点?


69. 预编译五个步骤?Es6 导入导出跟 Es5 导入导出不同?


70. 如何实现圣杯布局,跟双飞翼布局?


71. target 跟 current target 区别?


72. 怎么实现,实时获取服务端实现的数据?

  1. 轮询
  2. 服务器实现 socket 连接,通过控制台使用命令更新数据。
  3. 通过数据库服务器的 trigger 机制。得到变化的数据。然后定制检查数据库,看数据是否有变化。

73. 怎么判断两个对象属性跟属性值相等让他两个相等?

  1. 通过 json.stringify 转换成字符串然后在判断两个字符串是否相等。

74. 设计模式有哪些?以及他们的作用。


75. 常见的排序方式?以及排序算法?


76. 什么是 SEO 优化?

全称:Search English Optimization,搜索引擎优化。自从有了搜索引擎,SEO 便诞生了。

存在的意义:为了提升网页在搜索引擎自然搜索结果中的收录数量以及排序位置而做的优化行为。简言之,就是希望百度等搜索引擎能多多我们收录精心制作后的网站,并且在别人访问时网站能排在前面。

分类:白帽 SEO 和黑帽 SEO。白帽 SEO,起到了改良和规范网站设计的作用,使网站对搜索引擎和用户更加友好,并且网站也能从搜索引擎中获取合理的流量,这是搜索引擎鼓励和支持的。黑帽 SEO,利用和放大搜索引擎政策缺陷来获取更多用户的访问量,这类行为大多是欺骗搜索引擎,一般搜索引擎公司是不支持与鼓励的。本文针对白帽 SEO,那么白帽 SEO 能做什么呢?

  1. 对网站的标题、关键字、描述精心设置,反映网站的定位,让搜索引擎明白网站是做什么的;

  2. 网站内容优化:内容与关键字的对应,增加关键字的密度;

  3. 在网站上合理设置 Robot.txt 文件;

  4. 生成针对搜索引擎友好的网站地图;

  5. 增加外部链接,到各个网站上宣传;

通过网站的结构布局设计和网页代码优化,使前端页面既能让浏览器用户能够看懂,也能让“蜘蛛”看懂。

(1) 网站结构布局优化:尽量简单、开门见山,提倡扁平化结构。

一般而言,建立的网站结构层次越少,越容易被“蜘蛛”抓取,也就容易被收录。一般中小型网站目录结构超过三级,“蜘蛛”便不愿意往下爬,“万一天黑迷路了怎么办”。并且根据相关调查:访客如果经过跳转 3 次还没找到需要的信息,很可能离开。因此,三层目录结构也是体验的需要。为此我们需要做到:

  1. 控制首页链接数量

网站首页是权重最高的地方,如果首页链接太少,没有“桥”,“蜘蛛”不能继续往下爬到内页,直接影响网站收录数量。但是首页链接也不能太多,一旦太多,没有实质性的链接,很容易影响用户体验,也会降低网站首页的权重,收录效果也不好。

因此对于中小型企业网站,建议首页链接在 100 个以内,链接的性质可以包含页面导航、底部导航、锚文字链接等等,注意链接要建立在用户的良好体验和引导用户获取信息的基础之上。

2.扁平化的目录层次,尽量让“蜘蛛”只要跳转 3 次,就能到达网站内的任何一个内页。扁平化的目录结构,比如:“植物”–> “水果” –> “苹果”、“桔子”、“香蕉”,通过 3 级就能找到香蕉了。

3.导航优化

导航应该尽量采用文字方式,也可以搭配图片导航,但是图片代码一定要进行优化,

其次,在每一个网页上应该加上面包屑导航,好处:从用户体验方面来说,可以让用户了解当前所处的位置以及当前页面在整个网站中的位置,帮助用户很快了解网站组织形式,从而形成更好的位置感,同时提供了返回各个页面的接口,方便用户操作;对“蜘蛛”而言,能够清楚的了解网站结构,同时还增加了大量的内部链接,方便抓取,降低跳出率。

  1. 网站的结构布局–不可忽略的细节

1)页面头部:logo 及主导航,以及用户的信息。

2)页面主体:左边正文,包括面包屑导航及正文;右边放热门文章及相关文章,好处:留住访客,让访客多停留,对“蜘蛛”而言,这些文章属于相关链接,增强了页面相关性,也能增强页面的权重。

3)页面底部:版权信息和友情链接。

特别注意:分页导航写法,推荐写法:“首页 1 2 3 4 5 6 7 8 9 下拉框”,这样“蜘蛛”能够根据相应页码直接跳转,下拉框直接选择页面跳转。而下面的写法是不推荐的,“首页 下一页 尾页”,特别是当分页数量特别多时,“蜘蛛”需要经过很多次往下爬,才能抓取,会很累、会容易放弃。

5.控制页面的大小,减少 http 请求,提高网站的加载速度。

一个页面最好不要超过 100k,太大,页面加载速度慢。当速度很慢时,用户体验不好,留不住访客,并且一旦超时,“蜘蛛”也会离开。

(2) 网页代码优化

1.标题:只强调重点即可,尽量把重要的关键词放在前面,关键词不要重复出现,尽量做到每个页面的标题中不要设置相同的内容。</p> <p>2.标签:关键词,列举出几个页面的重要关键字即可,切记过分堆砌。</p> <p>3.标签:网页描述,需要高度概括网页内容,切记不能太长,过分堆砌关键词,每个页面也要有所不同。</p> <p>4.中的标签:尽量让代码语义化,在适当的位置使用适当的标签,用正确的标签做正确的事。让阅读源码者和“蜘蛛”都一目了然。比如:h1-h6 是用于标题类的,</p> <nav> 标签是用来设置页面主导航的等。 </nav> <p></p> <p>5.标签:页内链接,要加“title” 属性加以说明,让访客和 “蜘蛛” 知道。而外部链接,链接到其他网站的,则需要加上 el="nofollow"属性, 告诉 “蜘蛛” 不要爬,因为一旦“蜘蛛”爬了外部链接之后,就不会再回来了。</p> <p>6.正文标题要用</p> <h1>标签:“蜘蛛” 认为它最重要,若不喜欢</h1> <h1>的默认样式可以通过 CSS 设置。尽量做到正文标题用</h1> <h1>标签,副标题用</h1> <h2>标签, 而其它地方不应该随便乱用 h 标题标签。</h2> <p></p> <p>7.<br>标签:只用于文本内容的换行,比如:</p> <p>    第一行文字内容<br> 第二行文字内容<br> 第三行文字内容 </p> 8.表格应该使用表格标题标签 <p>9.应使用 “alt” 属性加以说明</p> <p>10.<strong>、<em>标签 : 需要强调时使用。<strong>标签在搜索引擎中能够得到高度的重视,它能突出关键词,表现重要的内容,<em>标签强调效果仅次于<strong>标签。</strong></em></strong></em></strong></p> <p><b>、<i>标签: 只是用于显示效果时使用,在 SEO 中不会起任何效果。</i></b></p> <p>11、文本缩进不要使用特殊符号  应当使用 CSS 进行设置。版权符号不要使用特殊符号 © 可以直接使用输入法,拼“banquan”,选择序号 5 就能打出版权符号 ©。</p> <p>12、巧妙利用 CSS 布局,将重要内容的 HTML 代码放在最前面,最前面的内容被认为是最重要的,优先让“蜘蛛”读取,进行内容关键词抓取。</p> <p>13.重要内容不要用 JS 输出,因为“蜘蛛”不认识</p> <p>14.尽量少使用 iframe 框架,因为“蜘蛛”一般不会读取其中的内容</p> <p>15.谨慎使用 display:none :对于不想显示的文字内容,应当设置 z-index 或设置到浏览器显示器之外。因为搜索引擎会过滤掉 display:none 其中的内容。</p> <ol start="16"> <li>不断精简代码</li> </ol> <p>17.js 代码如果是操作 DOM 操作,应尽量放在 body 结束标签之前,html 代码之后。</p> <hr> <h3>77. vue 中的 KEY 以及为何不用索引当 KEY。</h3> <hr> <h3>78.嵌套组件的生命周期执行顺序是如何的?</h3> <p>先执行父组件 beforecreate 在执行 created 之后执行 子组件的 beforecreate 一直到 mounted 之后再执行父组件的 beforemount 跟 mounted。</p> <hr> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1395156443212075008"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(前端面试,html,html5,vue.js,css3,jquery)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1900616853105995776.htm" title="微信小程序点餐系统的设计与实现(开题报告+源码+论文)_在线点餐外卖系统设计与实现文献" target="_blank">微信小程序点餐系统的设计与实现(开题报告+源码+论文)_在线点餐外卖系统设计与实现文献</a> <span class="text-muted">2301_82243979</span> <a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">微信小程序</a><a class="tag" taget="_blank" href="/search/%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">小程序</a> <div>二.技术环境jdk版本:1.8及以上ide工具:Eclipse或者IDEA,微信小程序开发工具数据库:mysql5.7(必须5.7)编程语言:Javajava框架:ssmmaven:3.6.1详细技术:HTML+CSS+JAVA+SSM+MYSQL+VUE+MAVEN+微信开发工具三.功能设计本基于微信小程序的外卖点餐系统的设计与实现有管理员,外卖员,餐厅,用户共四个角色。管理员功能有个人中心,外</div> </li> <li><a href="/article/1900611433402527744.htm" title="Caddy2使用阿里云DNS申请https证书,利用阿里云DNS境内外不同解析给Gone文档做一个同域名的国内镜像站点" target="_blank">Caddy2使用阿里云DNS申请https证书,利用阿里云DNS境内外不同解析给Gone文档做一个同域名的国内镜像站点</a> <span class="text-muted">dapeng-大鹏</span> <a class="tag" taget="_blank" href="/search/%E5%A4%A7%E9%B9%8F%E8%BF%90%E7%BB%B4%E8%AE%B0%E5%BD%95/1.htm">大鹏运维记录</a><a class="tag" taget="_blank" href="/search/caddy/1.htm">caddy</a><a class="tag" taget="_blank" href="/search/https/1.htm">https</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/docker-compose/1.htm">docker-compose</a> <div>我从头到尾实现了一个Golang的依赖注入框架,并且集成了gin、xorm、redis、cron、消息中间件等功能;自己觉得还挺好用的,并且打算长期维护!github地址:https://github.com/gone-io/gone文档原地址:https://goner.fun/zh/guide/auto-gen-priest.html请帮忙在github上点个⭐️吧,这对我很重要;万分感谢!!</div> </li> <li><a href="/article/1900609792209121280.htm" title="[论文解读] 多机器人系统动态任务分配综述" target="_blank">[论文解读] 多机器人系统动态任务分配综述</a> <span class="text-muted">「已注销」</span> <a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a> <div>https://www.emerald.com/insight/content/doi/10.1108/IR-04-2020-0073/full/html多机器人/多智能体动态环境任务分配决策动态任务调度策略该文章主要是想对目前stateoftheart多机器人动态任务调度策略做一个全面的评价,注意定语挺多的,里面的方法也较多为近几年的智能调度那些算法。衡量方法主要考虑到了应用场景、限制、目标方程</div> </li> <li><a href="/article/1900606893206859776.htm" title="Python API接口" target="_blank">Python API接口</a> <span class="text-muted">君王的羔羊</span> <a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/AI/1.htm">AI</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>人工智能机器人EverydayWechat老李API图灵机器人:http://www.turingapi.com/(需求实名制认证,并每天免费数量只有100条)青云客智能聊天机器人:http://api.qingyunke.com/(无须申请,无数量限制,但有点智障,分手神器。分手神器,慎用)智能闲聊(腾讯):https://ai.qq.com/product/nlpchat.shtml(申请使用</div> </li> <li><a href="/article/1900599452977131520.htm" title="自动化测试:灵活书写XPATH定位路径" target="_blank">自动化测试:灵活书写XPATH定位路径</a> <span class="text-muted">ZJ_star_1220</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>进行UI自动化测试过程中XPATH定位是使用最多的定位方法,但是有时候直接复制出来的XPATH路径会比较长,所以就需要掌握一些更高级的方法,通过询问AI,最终得到了以下方法,感觉很有用,所以记录下来一、基础定位语法绝对路径与相对路径绝对路径:以/开头,从根节点逐层定位(如/html/body/div/input),路径长且易受页面结构调整影响相对路径:以//开头,直接定位目标元素(如//input</div> </li> <li><a href="/article/1900594281949753344.htm" title="HTML星球大冒险之路线图" target="_blank">HTML星球大冒险之路线图</a> <span class="text-muted">我自纵横2023</span> <a class="tag" taget="_blank" href="/search/HTML%E6%95%99%E7%A8%8B/1.htm">HTML教程</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>第一章:欢迎来到HTML星球!1.1宇宙的基石:HTML是什么?比喻:HTML是网页世界的「乐高积木」,用标签搭建一切可见内容目标:理解HTML的作用,掌握第一个声明1.2认识HTML文档的「骨骼结构」趣味比喻:HTML文档像汉堡包是包装盒(根标签)是配料表(元信息)是汉堡本体(可见内容)示例:打印「Hello,HTML星球!」第二章:标签大狂欢:从基础到变形2.1文本标签的魔法咒语✨幽默教学::</div> </li> <li><a href="/article/1900586092499890176.htm" title="React 和 Vue _使用区别" target="_blank">React 和 Vue _使用区别</a> <span class="text-muted">开心小老虎</span> <a class="tag" taget="_blank" href="/search/react%E7%9F%A5%E8%AF%86%E7%82%B9%2B%E7%BB%84%E4%BB%B6/1.htm">react知识点+组件</a><a class="tag" taget="_blank" href="/search/vue3%E7%9F%A5%E8%AF%86%E7%82%B9%2B%E7%BB%84%E4%BB%B6/1.htm">vue3知识点+组件</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E7%9F%A5%E8%AF%86%E7%82%B9/1.htm">前端知识点</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>目录一、框架介绍1.Vue2.React二、框架结构1.创建应用2.框架结构三、使用区别1.单页面组成2.样式3.显示响应式数据4.响应式html标签属性5.控制元素显隐6.条件渲染7.渲染列表react和vue是目前前端比较流行的两大框架,前端程序员应该将两种框架都掌握,本文总结一些基本知识点的使用区别。一、框架介绍1.VueVue是一个框架,也是一个生态。其功能覆盖了大部分前端开发常见的需求。</div> </li> <li><a href="/article/1900585459097071616.htm" title="html5使用本地sqlite数据库" target="_blank">html5使用本地sqlite数据库</a> <span class="text-muted">小祁爱编程</span> <a class="tag" taget="_blank" href="/search/sqlite/1.htm">sqlite</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/big/1.htm">big</a><a class="tag" taget="_blank" href="/search/data/1.htm">data</a> <div>html5使用本地sqlite数据库本地数据库概述在HTML5中,大大丰富了客户端本地可以存储的内容,添加了很多功能将原本必须要保存在服务器上的数据转为保存在客户端本地,从而大大提高了Web应用程序性能,减轻了服务器的负担,使用Web时代重新回到了“客户端为重、服务器端为轻”的时代。HTML5中内置了两种本地数据库,一种是SQLite,一种是indexedDBSQLite数据库使用操作本地数据库的</div> </li> <li><a href="/article/1900583567763763200.htm" title="HTML网页中添加视频的代码" target="_blank">HTML网页中添加视频的代码</a> <span class="text-muted">冬瓜生鲜</span> <a class="tag" taget="_blank" href="/search/JavaWeb/1.htm">JavaWeb</a> <div>       //非原创(当时忘记保存大佬连接了,不知道是谁的了,所以没有转载链接,见谅)只需要把名字改改就行如果要实现自动播放:改下这个:controlsautoplaymuted;       </div> </li> <li><a href="/article/1900563888626266112.htm" title="第五章:HTML5 大升级:解锁未来技能" target="_blank">第五章:HTML5 大升级:解锁未来技能</a> <span class="text-muted">我自纵横2023</span> <a class="tag" taget="_blank" href="/search/HTML%E6%95%99%E7%A8%8B/1.htm">HTML教程</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a> <div>第五章:HTML5大升级:解锁未来技能5.1语义化标签的「身份认证」一、语义化概念理解在HTML的旧时代,我们就像一群建筑工人,只能用一些通用的和标签来搭建网页,就好比用千篇一律的砖块盖房子,虽然能把房子盖起来,但很难从外观上看出房子的各个部分是做什么用的。而HTML5引入的语义化标签,就像是给每一块砖块都赋予了特殊的形状和用途,让网页的结构变得一目了然,就像给每个房间都贴上了清晰的标签,告诉搜索</div> </li> <li><a href="/article/1900561614973759488.htm" title="WAI-ARIA" target="_blank">WAI-ARIA</a> <span class="text-muted">前端岳大宝</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E6%A0%B8%E5%BF%83%E7%9F%A5%E8%AF%86%E6%80%BB%E7%BB%93/1.htm">前端核心知识总结</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a> <div>以下是关于WAI-ARIA(WebAccessibilityInitiative-AccessibleRichInternetApplications)的核心知识梳理。一、WAI-ARIA的基本概念定义与作用WAI-ARIA是一套由W3C制定的技术规范,旨在通过语义补充使动态Web应用(如单页应用、复杂UI组件)对辅助技术(如屏幕阅读器)更可访问。核心目标:为无法通过原生HTML语义化标签表达的U</div> </li> <li><a href="/article/1900534117804601344.htm" title="Flutter桌面开发(三、widget布局与表单)" target="_blank">Flutter桌面开发(三、widget布局与表单)</a> <span class="text-muted">左钦杨</span> <a class="tag" taget="_blank" href="/search/flutter/1.htm">flutter</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>一、流式布局横铺或者竖着铺Row或者Column这俩都是有Children的就是可以有多个子元素例子:Row(Children:[Container(),Container(),Container(),])Container类似于html中的DIV可以设置背景border和宽度高度Container(decoration:BoxDecoration(image:DecorationImage(im</div> </li> <li><a href="/article/1900533738048122880.htm" title="Vue.js 3 的设计思路:从声明式UI到高效渲染机制" target="_blank">Vue.js 3 的设计思路:从声明式UI到高效渲染机制</a> <span class="text-muted">前端 贾公子</span> <a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/ui/1.htm">ui</a><a class="tag" taget="_blank" href="/search/flutter/1.htm">flutter</a> <div>目录一、声明式UI与虚拟DOM的灵活性二、渲染器:虚拟DOM到真实DOM的桥梁三、组件的本质与实现四、编译与运行时的协同优化五、性能与可维护性的权衡总结Vue.js3作为新一代前端框架,其设计理念在声明式UI描述、虚拟DOM优化、组件化架构以及编译与运行时协作等方面实现了显著突破。本文将从多个角度深入探讨其设计思路。一、声明式UI与虚拟DOM的灵活性Vue.js3的核心特性之一是声明式UI描述,开</div> </li> <li><a href="/article/1900528441330036736.htm" title="深入解析:构建高效单页应用(SPA)的最佳实践与示例" target="_blank">深入解析:构建高效单页应用(SPA)的最佳实践与示例</a> <span class="text-muted">布兰妮甜</span> <a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/Vue/1.htm">Vue</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E9%A1%B5%E5%BA%94%E7%94%A8/1.htm">单页应用</a><a class="tag" taget="_blank" href="/search/SPA/1.htm">SPA</a><a class="tag" taget="_blank" href="/search/Vue.js/1.htm">Vue.js</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>文章目录前言一、单页应用(SPA)的介绍二、单页应用(SPA)的优势三、构建单页应用(SPA)的基本步骤四、使用Vue.js构建一个简易的单页应用(SPA):任务管理器结语前言随着互联网技术的发展,用户对于网页应用的交互性和响应速度提出了更高的要求。传统的多页面应用(MPA)在每次用户交互时需要重新加载整个页面,这不仅增加了服务器的负担,也降低了用户体验。而单页应用(SinglePageAppli</div> </li> <li><a href="/article/1900517083683287040.htm" title="《Web 应用项目开发》课程心得体会:从理论到实战,开启 Web 开发新征程" target="_blank">《Web 应用项目开发》课程心得体会:从理论到实战,开启 Web 开发新征程</a> <span class="text-muted">m0_74824091</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>在信息技术飞速发展的当下,Web应用已然渗透到生活的方方面面,从日常网购、社交娱乐,到在线办公、学习平台,无一不是Web应用的成果。怀着对互联网技术的热忱与憧憬,我踏入了《Web应用项目开发》这门课程,历经数月的沉浸式学习与实践,收获远超预期,犹如经历一场脱胎换骨的蜕变,以下便是我在这门课程中的全面心得体会。夯实基础:Web技术初相识课程伊始,仿若踏入一片未知的技术丛林,HTML、CSS和Java</div> </li> <li><a href="/article/1900514431763279872.htm" title="C程序员驯服Common Lisp - 入门 - [语言探索]<转载>" target="_blank">C程序员驯服Common Lisp - 入门 - [语言探索]<转载></a> <span class="text-muted">acool555</span> <a class="tag" taget="_blank" href="/search/lisp/1.htm">lisp</a><a class="tag" taget="_blank" href="/search/%E8%AF%AD%E8%A8%80/1.htm">语言</a><a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/documentation/1.htm">documentation</a><a class="tag" taget="_blank" href="/search/fortran/1.htm">fortran</a> <div>版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://bigwhite.blogbus.com/logs/158733479.html毫无疑问,CommonLisp是一门庞大且复杂的语言,学习曲线并不平坦。对于一个从未接触过函数式语言、交互式语言以及动态类型语言的C程序员来说,学习CommonLisp显然是一个很大的挑战。也许有人会问:"C语言已经无所不能了,为何还要学习C</div> </li> <li><a href="/article/1900508759512379392.htm" title="Web 开发的“三件套”" target="_blank">Web 开发的“三件套”</a> <span class="text-muted">zhangpeng455547940</span> <a class="tag" taget="_blank" href="/search/Web%E5%BC%80%E5%8F%91/1.htm">Web开发</a><a class="tag" taget="_blank" href="/search/react/1.htm">react</a><a class="tag" taget="_blank" href="/search/native/1.htm">native</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>HTML:定义内容结构。CSS:控制样式布局。JavaScript:实现动态行为和复杂逻辑。JavaScript应用场景前端开发:操作DOM、处理用户事件、实现动画等。后端开发:通过Node.js构建服务器端应用。跨平台开发:Electron(桌面应用)、ReactNative(移动端)等。</div> </li> <li><a href="/article/1900505852633214976.htm" title="jQuery的substring由后向前截取字符串的方法" target="_blank">jQuery的substring由后向前截取字符串的方法</a> <span class="text-muted">潮易</span> <div>substring方法定义和用法substring方法用于提取字符串中介于两个指定下标之间的字符。语法stringObject.substring(start,stop)参数描述start必需。一个非负的整数,规定要提取的子串的第一个字符在stringObject中的位置。stop可选。一个非负的整数,比要提取的子串的最后一个字符在stringObject中的位置多1。如果省略该参数,那么返回的子</div> </li> <li><a href="/article/1900489337112424448.htm" title="JavaScript的学习6——jQuery" target="_blank">JavaScript的学习6——jQuery</a> <span class="text-muted">十五春会</span> <div>文章目录jQuery选择器按ID查找按tag查找按class查找按属性查找组合查找多项选择器练习层级选择器子选择器(ChildSelector)过滤器(Filter)表单相关练习查找和过滤操作DOM修改Text和HTML修改CSS显示和隐藏DOM获取DOM信息操作表单修改DOM结构添加DOM删除节点练习事件鼠标事件键盘事件其他事件事件参数取消绑定事件触发条件浏览器安全限制练习动画show/hide</div> </li> <li><a href="/article/1900485806754164736.htm" title="前端面试:React hooks 调用是可以写在 if 语句里面吗?" target="_blank">前端面试:React hooks 调用是可以写在 if 语句里面吗?</a> <span class="text-muted">returnShitBoy</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>在React中,Hooks是一种新的特性,允许你在函数组件中使用状态(state)和其他React特性。非常重要的一点是,ReactHooks必须遵循特定的规则,以确保组件的行为一致。ReactHooks使用规则只能在函数组件中调用Hook:你只能在React的函数组件或自定义Hooks中调用Hook,而不能在普通JavaScript函数中调用它们。不能在条件语句中调用Hook:Hooks不能放在</div> </li> <li><a href="/article/1900482898557988864.htm" title="《react》前端面试题" target="_blank">《react》前端面试题</a> <span class="text-muted">微 光</span> <a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95%E9%A2%98/1.htm">面试题</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>说说你对reacthook的理解ReactHooks是React16.8版本引入的一种新的特性,它允许在不编写class的情况下使用state和其他React特性。我的理解主要集中在以下几个方面:函数组件的状态管理:Hooks提供了useState这样的钩子函数,使得我们可以在函数组件中使用状态(state),而不需要将组件转换为class组件。这简化了代码,并使组件的逻辑更易于理解和维护。副作用</div> </li> <li><a href="/article/1900477731880103936.htm" title="HTML标记语言<head>中 的几个元素" target="_blank">HTML标记语言<head>中 的几个元素</a> <span class="text-muted">2301_79698214</span> <a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>在HTML文档中,部分包含了文档的元数据(metadata),这对于网页的正确显示和搜索引擎优化(SEO)非常重要。部分通常包含以下几个重要的元素::定义了网页的标题,这个标题会显示在浏览器的标题栏或页面的标签上。例如:我的网页:用于定义网页的元数据,如字符集、页面描述、关键词、作者、视口设置等。例如::用于链接外部资源,如CSS文件、图标(favicon)等。例如::用于直接在文档中嵌入CSS样</div> </li> <li><a href="/article/1900470038654152704.htm" title=".net 插件式开发——实现web框架中大数据算法嵌入(BP算法逼近)" target="_blank">.net 插件式开发——实现web框架中大数据算法嵌入(BP算法逼近)</a> <span class="text-muted">weixin_34219944</span> <a class="tag" taget="_blank" href="/search/json/1.htm">json</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>关于算法的引入:插件式架构设计,可移植性强,利于算法的升级。【插件式开发相关资料】https://www.cnblogs.com/lenic/p/4129096.html以BP算法为例:1、首先定义一个接口规范////////插件的统一入口///publicinterfaceIPluginPerfrom{//////统一算法插件入口//////输出参数的个数///输出参数///输入参数///str</div> </li> <li><a href="/article/1900468020422176768.htm" title="HTML5拼图游戏开发经验分享" target="_blank">HTML5拼图游戏开发经验分享</a> <span class="text-muted">木木黄木木</span> <a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a> <div>HTML5拼图游戏开发经验分享这里写目录标题HTML5拼图游戏开发经验分享前言项目架构1.文件结构2.核心功能模块技术要点解析1.响应式布局2.图片处理3.拖拽交互4.动画效果性能优化开发心得项目亮点总结源码分享写在最后前言在Web前端开发领域,通过实战项目来提升编程技能是最有效的学习方式之一。今天我要分享一个HTML5拼图游戏的开发经验,这个项目涵盖了现代前端开发的多个重要概念,包括响应式设计、</div> </li> <li><a href="/article/1900427419941138432.htm" title="spring 的model repository service controller的功能" target="_blank">spring 的model repository service controller的功能</a> <span class="text-muted">LCY133</span> <a class="tag" taget="_blank" href="/search/web%E5%BC%80%E5%8F%91/1.htm">web开发</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a> <div>1.Controller层(控制层)•功能:负责接收和处理HTTP请求,协调客户端与业务逻辑之间的交互。•核心职责:•请求处理:解析HTTP请求参数(如URL参数、Body数据、Headers)。•路由分发:根据请求路径(@RequestMapping)调用对应的Service方法。•响应生成:返回格式化数据(如JSON、XML)或视图(如HTML页面)。•输入校验:验证请求参数的合法性(如使用@</div> </li> <li><a href="/article/1900409262132228096.htm" title="HTML 样式之 CSS 全面解析" target="_blank">HTML 样式之 CSS 全面解析</a> <span class="text-muted">烂蜻蜓</span> <a class="tag" taget="_blank" href="/search/HTML/1.htm">HTML</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>在网页开发的世界里,HTML负责搭建页面的结构,而CSS(CascadingStyleSheets,层叠样式表)则承担着渲染HTML元素标签样式的重任,赋予网页丰富的视觉效果。一、CSS的魅力展现CSS能够实现诸如改变文字的样式与颜色(Look!Stylesandcolors)、灵活操控文本(ManipulateText)、设置元素的颜色和盒子模型(Colors,Boxes)等诸多功能,极大地提升</div> </li> <li><a href="/article/1900395517951668224.htm" title="10分钟速通【uniapp面试题】" target="_blank">10分钟速通【uniapp面试题】</a> <span class="text-muted">2501_91133311</span> <a class="tag" taget="_blank" href="/search/uni-app/1.htm">uni-app</a> <div>写在前面:铁子们,我有个长期项目,想搞点外快的宝子可以看看我GitHub!https://github.com/yuhan-9527/coder2retire1.什么是UniApp?它有什么特点?答案:UniApp是一个基于Vue.js的跨平台应用开发框架,可以使用Vue.js的开发语法编写一次代码,然后通过编译生成可以在多个平台(包括iOS、Android、H5等)上运行的应用。UniApp具有</div> </li> <li><a href="/article/1900389964902887424.htm" title="流星雨特效css3" target="_blank">流星雨特效css3</a> <span class="text-muted">你的美,让我痴迷</span> <a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/CSS%E5%8A%A8%E7%94%BB/1.htm">CSS动画</a><a class="tag" taget="_blank" href="/search/HTML5/1.htm">HTML5</a><a class="tag" taget="_blank" href="/search/%E6%98%9F%E7%B3%BB%E8%83%8C%E6%99%AF/1.htm">星系背景</a><a class="tag" taget="_blank" href="/search/%E5%85%B3%E9%94%AE%E5%B8%A7/1.htm">关键帧</a><a class="tag" taget="_blank" href="/search/%E8%A7%86%E8%A7%89%E8%89%BA%E6%9C%AF/1.htm">视觉艺术</a> <div>*{margin:0;padding:0;box-sizing:border-box;}body{overflow:hidden;}section{position:absolute;top:0;left:0;width:100%;height:100vh;background:url(img/xingkong.jpg);background-position-x:center;backgroun</div> </li> <li><a href="/article/1900384159377977344.htm" title="CSS3 用户界面设计指南" target="_blank">CSS3 用户界面设计指南</a> <span class="text-muted">froginwe11</span> <a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>CSS3用户界面设计指南引言随着互联网的快速发展,用户界面设计已经成为网站和应用程序吸引和留住用户的关键因素之一。CSS3,作为Web开发中的核心技术之一,提供了丰富的工具和特性来改善用户界面。本文将深入探讨CSS3在用户界面设计中的应用,包括基本概念、常用技巧以及实际案例分析。CSS3用户界面基本概念1.媒体查询媒体查询(MediaQueries)是CSS3的一个重要特性,它允许开发者根据不同的</div> </li> <li><a href="/article/1900373824273182720.htm" title="Electron+Python软件系统开发记录(一):基础环境搭建" target="_blank">Electron+Python软件系统开发记录(一):基础环境搭建</a> <span class="text-muted">多宝鱼1998</span> <a class="tag" taget="_blank" href="/search/%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE%E9%81%87%E5%88%B0%E7%9A%84%E5%9D%91/1.htm">环境配置遇到的坑</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/nodejs/1.htm">nodejs</a><a class="tag" taget="_blank" href="/search/thrift/1.htm">thrift</a> <div>Electron+Python软件系统开发记录(一):基础环境搭建1.问题说明最近开始做本科毕设,其中有一部分内容是搭建一个完整的软件系统。系统要求就是常见的客户端,服务器,数据库的整体架构。因为本科不是计算机系的,所以学习的相关技能少,以前写课程设计一般用QT或者MFC,还有Mac的OC语言。本着多学习的态度,这次选用了Electron框架,可以迫使自己学学html,css,js这些东西。后端因</div> </li> <li><a href="/article/32.htm" title="对于规范和实现,你会混淆吗?" target="_blank">对于规范和实现,你会混淆吗?</a> <span class="text-muted">yangshangchuan</span> <a class="tag" taget="_blank" href="/search/HotSpot/1.htm">HotSpot</a> <div>昨晚和朋友聊天,喝了点咖啡,由于我经常喝茶,很长时间没喝咖啡了,所以失眠了,于是起床读JVM规范,读完后在朋友圈发了一条信息: JVM Run-Time Data Areas:The Java Virtual Machine defines various run-time data areas that are used during execution of a program. So</div> </li> <li><a href="/article/159.htm" title="android 网络" target="_blank">android 网络</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a> <div>android的网络编程和java的一样没什么好分析的都是一些死的照着写就可以了,所以记录下来  方便查找   ,  服务器使用的是TomCat   服务器代码;  servlet的使用需要在xml中注册 package servlet; import java.io.IOException; import java.util.Arr</div> </li> <li><a href="/article/286.htm" title="[读书笔记]读法拉第传" target="_blank">[读书笔记]读法拉第传</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0/1.htm">读书笔记</a> <div>       1831年的时候,一年可以赚到1000英镑的人..应该很少的...       要成为一个科学家,没有足够的资金支持,很多实验都无法完成       但是当钱赚够了以后....就不能够一直在商业和市场中徘徊......</div> </li> <li><a href="/article/413.htm" title="随机数的产生" target="_blank">随机数的产生</a> <span class="text-muted">沐刃青蛟</span> <a class="tag" taget="_blank" href="/search/%E9%9A%8F%E6%9C%BA%E6%95%B0/1.htm">随机数</a> <div>c++中阐述随机数的方法有两种:   一是产生假随机数(不管操作多少次,所产生的数都不会改变)          这类随机数是使用了默认的种子值产生的,所以每次都是一样的。   //默认种子 for (int i = 0; i < 5; i++) { cout<<</div> </li> <li><a href="/article/540.htm" title="PHP检测函数所在的文件名" target="_blank">PHP检测函数所在的文件名</a> <span class="text-muted">IT独行者</span> <a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/%E5%87%BD%E6%95%B0/1.htm">函数</a> <div>很简单的功能,用到PHP中的反射机制,具体使用的是ReflectionFunction类,可以获取指定函数所在PHP脚本中的具体位置。 创建引用脚本。 代码:   [php]   view plain copy // Filename: functions.php    <?php&nbs</div> </li> <li><a href="/article/667.htm" title="银行各系统功能简介" target="_blank">银行各系统功能简介</a> <span class="text-muted">文强chu</span> <a class="tag" taget="_blank" href="/search/%E9%87%91%E8%9E%8D/1.htm">金融</a> <div>银行各系统功能简介   业务系统 核心业务系统 业务功能包括:总账管理、卡系统管理、客户信息管理、额度控管、存款、贷款、资金业务、国际结算、支付结算、对外接口等 清分清算系统 以清算日期为准,将账务类交易、非账务类交易的手续费、代理费、网络服务费等相关费用,按费用类型计算应收、应付金额,经过清算人员确认后上送核心系统完成结算的过程 国际结算系</div> </li> <li><a href="/article/794.htm" title="Python学习1(pip django 安装以及第一个project)" target="_blank">Python学习1(pip django 安装以及第一个project)</a> <span class="text-muted">小桔子</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/django/1.htm">django</a><a class="tag" taget="_blank" href="/search/pip/1.htm">pip</a> <div>    最近开始学习python,要安装个pip的工具。听说这个工具很强大,安装了它,在安装第三方工具的话so easy!然后也下载了,按照别人给的教程开始安装,奶奶的怎么也安装不上! 第一步:官方下载pip-1.5.6.tar.gz, https://pypi.python.org/pypi/pip easy! 第二部:解压这个压缩文件,会看到一个setup.p</div> </li> <li><a href="/article/921.htm" title="php 数组" target="_blank">php 数组</a> <span class="text-muted">aichenglong</span> <a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/%E6%8E%92%E5%BA%8F/1.htm">排序</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E7%BB%84/1.htm">数组</a><a class="tag" taget="_blank" href="/search/%E5%BE%AA%E7%8E%AF/1.htm">循环</a><a class="tag" taget="_blank" href="/search/%E5%A4%9A%E7%BB%B4%E6%95%B0%E7%BB%84/1.htm">多维数组</a> <div>1 php中的创建数组 $product = array('tires','oil','spark');//array()实际上是语言结构而不  是函数 2 如果需要创建一个升序的排列的数字保存在一个数组中,可以使用range()函数来自动创建数组 $numbers=range(1,10)//1 2 3 4 5 6 7 8 9 10 $numbers=range(1,10,</div> </li> <li><a href="/article/1048.htm" title="安装python2.7" target="_blank">安装python2.7</a> <span class="text-muted">AILIKES</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>安装python2.7 1、下载可从 http://www.python.org/进行下载#wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz 2、复制解压 #mkdir -p /opt/usr/python #cp  /opt/soft/Python-2</div> </li> <li><a href="/article/1175.htm" title="java异常的处理探讨" target="_blank">java异常的处理探讨</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/JAVA%E5%BC%82%E5%B8%B8/1.htm">JAVA异常</a> <div>//java异常  /* 1,了解java 中的异常处理机制,有三种操作 a,声明异常  b,抛出异常  c,捕获异常 2,学会使用try-catch-finally来处理异常 3,学会如何声明异常和抛出异常 4,学会创建自己的异常   */   //2,学会使用try-catch-finally来处理异常   </div> </li> <li><a href="/article/1302.htm" title="getElementsByName实例" target="_blank">getElementsByName实例</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/element/1.htm">element</a> <div>实例1: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/x</div> </li> <li><a href="/article/1429.htm" title="探索JUnit4扩展:Runner" target="_blank">探索JUnit4扩展:Runner</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95/1.htm">单元测试</a><a class="tag" taget="_blank" href="/search/JUnit/1.htm">JUnit</a> <div>        参加敏捷培训时,教练提到Junit4的Runner和Rule,于是特上网查一下,发现很多都讲的太理论,或者是举的例子实在是太牵强。多搜索了几下,搜索到两篇我觉得写的非常好的文章。         文章地址:http://www.blogjava.net/jiangshachina/archive/20</div> </li> <li><a href="/article/1556.htm" title="[MongoDB学习笔记二]MongoDB副本集" target="_blank">[MongoDB学习笔记二]MongoDB副本集</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/mongodb/1.htm">mongodb</a> <div>1. 副本集的特性   1)一台主服务器(Primary),多台从服务器(Secondary)   2)Primary挂了之后,从服务器自动完成从它们之中选举一台服务器作为主服务器,继续工作,这就解决了单点故障,因此,在这种情况下,MongoDB集群能够继续工作   3)挂了的主服务器恢复到集群中只能以Secondary服务器的角色加入进来   2</div> </li> <li><a href="/article/1683.htm" title="【Spark八十一】Hive in the spark assembly" target="_blank">【Spark八十一】Hive in the spark assembly</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/assembly/1.htm">assembly</a> <div>Spark SQL supports most commonly used features of HiveQL. However, different HiveQL statements are executed in different manners: 1. DDL statements (e.g. CREATE TABLE, DROP TABLE, etc.)</div> </li> <li><a href="/article/1810.htm" title="Nginx问题定位之监控进程异常退出" target="_blank">Nginx问题定位之监控进程异常退出</a> <span class="text-muted">ronin47</span> <div>nginx在运行过程中是否稳定,是否有异常退出过?这里总结几项平时会用到的小技巧。 1. 在error.log中查看是否有signal项,如果有,看看signal是多少。 比如,这是一个异常退出的情况: $grep signal error.log 2012/12/24 16:39:56 [alert] 13661#0: worker process 13666 exited on s</div> </li> <li><a href="/article/1937.htm" title="No grammar constraints (DTD or XML schema).....两种解决方法" target="_blank">No grammar constraints (DTD or XML schema).....两种解决方法</a> <span class="text-muted">byalias</span> <a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a> <div>方法一:常用方法   关闭XML验证 工具栏:windows => preferences => xml => xml files => validation => Indicate when no grammar is specified:选择Ignore即可。 方法二:(个人推荐) 添加 内容如下 <?xml version=</div> </li> <li><a href="/article/2064.htm" title="Netty源码学习-DefaultChannelPipeline" target="_blank">Netty源码学习-DefaultChannelPipeline</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/netty/1.htm">netty</a> <div>package com.ljn.channel; /** * ChannelPipeline采用的是Intercepting Filter 模式 * 但由于用到两个双向链表和内部类,这个模式看起来不是那么明显,需要仔细查看调用过程才发现 * * 下面对ChannelPipeline作一个模拟,只模拟关键代码: */ public class Pipeline { </div> </li> <li><a href="/article/2191.htm" title="MYSQL数据库常用备份及恢复语句" target="_blank">MYSQL数据库常用备份及恢复语句</a> <span class="text-muted">chicony</span> <a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a> <div> 备份MySQL数据库的命令,可以加选不同的参数选项来实现不同格式的要求。 mysqldump -h主机 -u用户名 -p密码 数据库名 > 文件 备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。 mysqldump -–add-drop-table -uusername -ppassword databasename > ba</div> </li> <li><a href="/article/2318.htm" title="小白谈谈云计算--基于Google三大论文" target="_blank">小白谈谈云计算--基于Google三大论文</a> <span class="text-muted">CrazyMizzz</span> <a class="tag" taget="_blank" href="/search/Google/1.htm">Google</a><a class="tag" taget="_blank" href="/search/%E4%BA%91%E8%AE%A1%E7%AE%97/1.htm">云计算</a><a class="tag" taget="_blank" href="/search/GFS/1.htm">GFS</a> <div>    之前在没有接触到云计算之前,只是对云计算有一点点模糊的概念,觉得这是一个很高大上的东西,似乎离我们大一的还很远。后来有机会上了一节云计算的普及课程吧,并且在之前的一周里拜读了谷歌三大论文。不敢说理解,至少囫囵吞枣啃下了一大堆看不明白的理论。现在就简单聊聊我对于云计算的了解。     我先说说GFS   &n</div> </li> <li><a href="/article/2445.htm" title="hadoop 平衡空间设置方法" target="_blank">hadoop 平衡空间设置方法</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/hadoop/1.htm">hadoop</a><a class="tag" taget="_blank" href="/search/balancer/1.htm">balancer</a> <div>在hdfs-site.xml中增加设置balance的带宽,默认只有1M: <property>   <name>dfs.balance.bandwidthPerSec</name>     <value>10485760</value>     <description&g</div> </li> <li><a href="/article/2572.htm" title="Eclipse程序员要掌握的常用快捷键" target="_blank">Eclipse程序员要掌握的常用快捷键</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a> <div>  判断一个人的编程水平,就看他用键盘多,还是鼠标多。用键盘一是为了输入代码(当然了,也包括注释),再有就是熟练使用快捷键。 曾有人在豆瓣评 《卓有成效的程序员》:“人有多大懒,才有多大闲”。之前我整理了一个 程序员图书列表,目的也就是通过读书,让程序员变懒。  程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可以那么勤奋,每天都孜孜不倦得</div> </li> <li><a href="/article/2699.htm" title="Android学习之路" target="_blank">Android学习之路</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/Android%E5%AD%A6%E4%B9%A0/1.htm">Android学习</a> <div>转自:http://blog.csdn.net/ryantang03/article/details/6901459 以前有J2EE基础,接触JAVA也有两三年的时间了,上手Android并不困难,思维上稍微转变一下就可以很快适应。以前做的都是WEB项目,现今体验移动终端项目,让我越来越觉得移动互联网应用是未来的主宰。 下面说说我学习Android的感受,我学Android首先是看MARS的视</div> </li> <li><a href="/article/2826.htm" title="java 遍历Map的四种方法" target="_blank">java 遍历Map的四种方法</a> <span class="text-muted">eksliang</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/HashMap/1.htm">HashMap</a><a class="tag" taget="_blank" href="/search/java+%E9%81%8D%E5%8E%86Map%E7%9A%84%E5%9B%9B%E7%A7%8D%E6%96%B9%E6%B3%95/1.htm">java 遍历Map的四种方法</a> <div>转载请出自出处: http://eksliang.iteye.com/blog/2059996 package com.ickes; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; /** * 遍历Map的四种方式 </div> </li> <li><a href="/article/2953.htm" title="【精典】数据库相关相关" target="_blank">【精典】数据库相关相关</a> <span class="text-muted">gengzg</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>package C3P0; import java.sql.Connection; import java.sql.SQLException; import java.beans.PropertyVetoException; import com.mchange.v2.c3p0.ComboPooledDataSource; public class DBPool{ </div> </li> <li><a href="/article/3080.htm" title="自动补全" target="_blank">自动补全</a> <span class="text-muted">huyana_town</span> <a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%8A%A8%E8%A1%A5%E5%85%A8/1.htm">自动补全</a> <div><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml&quo</div> </li> <li><a href="/article/3207.htm" title="jquery在线预览PDF文件,打开PDF文件" target="_blank">jquery在线预览PDF文件,打开PDF文件</a> <span class="text-muted">天梯梦</span> <a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a> <div>最主要的是使用到了一个jquery的插件jquery.media.js,使用这个插件就很容易实现了。   核心代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.</div> </li> <li><a href="/article/3334.htm" title="ViewPager刷新单个页面的方法" target="_blank">ViewPager刷新单个页面的方法</a> <span class="text-muted">lovelease</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/viewpager/1.htm">viewpager</a><a class="tag" taget="_blank" href="/search/tag/1.htm">tag</a><a class="tag" taget="_blank" href="/search/%E5%88%B7%E6%96%B0/1.htm">刷新</a> <div>  使用ViewPager做滑动切换图片的效果时,如果图片是从网络下载的,那么再子线程中下载完图片时我们会使用handler通知UI线程,然后UI线程就可以调用mViewPager.getAdapter().notifyDataSetChanged()进行页面的刷新,但是viewpager不同于listview,你会发现单纯的调用notifyDataSetChanged()并不能刷新页面</div> </li> <li><a href="/article/3461.htm" title="利用按位取反(~)从复合枚举值里清除枚举值" target="_blank">利用按位取反(~)从复合枚举值里清除枚举值</a> <span class="text-muted">草料场</span> <a class="tag" taget="_blank" href="/search/enum/1.htm">enum</a> <div>以 C# 中的 System.Drawing.FontStyle 为例。   如果需要同时有多种效果, 如:“粗体”和“下划线”的效果,可以用按位或(|) FontStyle style = FontStyle.Bold | FontStyle.Underline;   如果需要去除 style 里的某一种效果, </div> </li> <li><a href="/article/3588.htm" title="Linux系统新手学习的11点建议" target="_blank">Linux系统新手学习的11点建议</a> <span class="text-muted">刘星宇</span> <a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E8%84%9A%E6%9C%AC/1.htm">脚本</a> <div>  随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起。这里介绍学习Linux的一些建议。   一、从基础开始:常常有些朋友在Linux论坛问一些问题,不过,其中大多数的问题都是很基础的。例如:为什么我使用一个命令的时候,系统告诉我找不到该目录,我要如何限制使用者的权限等问题,这些问题其实都不是很难的,只要了解了 Linu</div> </li> <li><a href="/article/3715.htm" title="hibernate dao层应用之HibernateDaoSupport二次封装" target="_blank">hibernate dao层应用之HibernateDaoSupport二次封装</a> <span class="text-muted">wangzhezichuan</span> <a class="tag" taget="_blank" href="/search/DAO/1.htm">DAO</a><a class="tag" taget="_blank" href="/search/Hibernate/1.htm">Hibernate</a> <div>/** * <p>方法描述:sql语句查询 返回List<Class> </p> * <p>方法备注: Class 只能是自定义类 </p> * @param calzz * @param sql * @return * <p>创建人:王川</p> * <p>创建时间:Jul</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>