zoukankan      html  css  js  c++  java
  • 2 JavaScript应用开发实践指南

    JavaScript 语言在浏览器中的运用

    1. HTTP请求,加载HTML后根据内容加载CSS等,大部分浏览器默认2个下载链接. HTML元素要尽可能简洁,不需要将Table元素变成多个div, css代码经常被拆分成文件结构中的数个模块,使用时进行合并. 引入了一个以上的CSS文件可能会导致性能问题, Tips: 多个文件,多个请求.
    2. JavaScript 相比其他元素受到特殊照顾, 只要用HTTP请求来获取这种文件时, 其他资源的下载都会停止. JavaScript 文件下载完毕之前, 它们都得等着.

      JavaScript本身不会阻塞网站的加载过程, 造成这个问题的根本原因在于浏览器加载javascript源文件所使用的机制.

    3. 通常,我们会将浏览器看不见的东西, 例如 <meta>元素, <title>元素, DOCTYPE, 网站图标(favion)以及外部CSS文件 统一放置于元素或者文档内部. 这样等到浏览器开始渲染的时候, 资源就已经准备好了. BUT 浏览器渲染好网页之前会出现一段时间空白, 这是因为在JavaScript元素在元素中被引入, 解决办法: 将js文件置于页面末尾.

    4. Js文件代码的主要功能: 1.修改HTML文档;2.与服务器通信;3.存储数据
    5. js文件与css配合使用, js获取元素后增加button事件, 给元素增加上clsss.
    6. Js辅助开发工具
      • 语言内置console对象工具
      • 浏览器中的工具. YUI 压缩Js程序所占的文件大小, 极大提高运行速度. JSLint 会挫伤你写代码的积极性.JSLint这个工具会分析你的代码问题.

    Js术语解析

    基本术语

    1. 文档对象模型(DOM), 三种关系: 父节点(parent), 子节点(child), 兄弟节点(sibling).
    2. 变量.
    • 局部变量, 定义在函数内部, 通过 var 关键字来声明. 如: var var1.
    • 全局变量. 在函数外用var声明, 定义的变量加入window对象, 不使用var关键字,需要时直接定义 三种方式. 谨慎使用全局变量 , 其用来描述不会发生改变的值, 也可以用来表示整个JavaScript源文件中需要多次引用使用的值.
    1. 字符串.
      引号(成对的半角单双引号)括起来的值一定是字符串. 赋值给某个变量后, 会忽略其值, 直接作为做服从. 在操作数学运算时, 要尤其注意这个问题.
    2. 注释, 单行注释// , 多个行之间注释/* */
    3. 操作符: + - * / ++ – =
    4. use stick指令. 函数定义中插入. 用来使用解释器采用更为严格的规则来执行脚本, 类似于HTML或XHTML中使用的doctype(文档类型声明). Tips: 现在经常作为一条JavaScript的最佳实践原则, 示例代码如下:
    1. fuction getFamilyMemberNames(){
    2. "use strict";
    3. /* the rest of your function code goes here*/
    4. }
    1. 数据存储方式.
    • 缓存. 变量被声明后多次使用, 即被缓存, 如果只用一次, 则直接使用值更快写. 如果多次最好使用变量声明赋值的方式缓存起来, 提高效率.
    • 数组. [‘1’,’2’,’3’]这种方式存储, 方便JavaScript解析, 经常出现在Ajax调用里面.
    • cookies和session. 存储与客户端和服务端.
    • JavaScript对象表示法. JSON也是一种易用同JavaScript集成的数据格式, 通常在用JavaScript调用服务时使用的.
    1. {
    2. "family":[
    3. "joan",
    4. "2"
    5. ]
    6. }
    • 对象. 距离将数据放在对象中. `要创建一套面向的JavaScript代码编写与管理模式, 首先要掌握这种方式.
    1. var grandmother ={
    2. "first-name":"anna",
    3. "last-name":"ddd"
    4. };





  • 相关阅读:
    UVa-10317
    UVa-1595
    UVa-10391
    UVa-10763
    UVa-10935
    UVa-1594
    UVa-1593
    从CSDN搬过来了
    memset会显著增加时间和空间的消耗吗
    memset对数组的初始化
  • 原文地址:https://www.cnblogs.com/hijushen/p/5353898.html
Copyright © 2011-2022 走看看