# javaScript **Repository Path**: grapecc/java-script ## Basic Information - **Project Name**: javaScript - **Description**: javaScript 重新打基础之路,基于three发现学不下去 介于js理论基础不过关 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-01-27 - **Last Updated**: 2022-06-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # javaScript #### 介绍 javaScript 重新打基础之路,基于three发现学不下去 介于js理论基础不过关 #### 软件架构 软件架构说明 #### 学习链接 [](https://www.bilibili.com/video/BV1x441167iH?from=search&seid=7684911769579634276&spm_id_from=333.337.0.0) #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 基础理论 # day 01 ## 5大主流浏览器 内核 必须掌握 IE trident chrome webkit blink safari webkit firefox gecko opera persto ## 浏览器的历史 和 JS诞生 概述 ### 1990 蒂姆-伯纳斯-李 超文本分享资讯的人 world wide web 移植到到 C libwww/nexus 允许别人浏览他人编写网站 ### 1993年 美国伊利诺大学NCSA组织 (马克-安德森) 开发一个MOSIAC 浏览器强大之处 在于显示图片 图形化浏览器 ### 1994 马克-安德森 和吉姆-克拉克 (硅图)SGI 成立MOSIAC COMMUNICATION corporation 插曲 MOSIAC -> 伊利诺大学 -> spy glass 公司 然后公司改名为 Netscape COMMUNICATION corporation 网景公司 -> netscape navigator -> 2003 ### 1996 微软公司收购了spy glass -> IE internet exploror 1.0 IE3 ,Jscript ### 1996 网景公司 Brendan eich 在NETSCAPE NAVIGATOR 开发出了livesciprt ### 1996 JAVA 火起来, 网景公司 liveScript 不温不火 于是和sun商量合作推广和宣传产品,livescript ->javascript ### 2001 IE6 xp 诞生 js引擎 ### 2003 mozilla 公司 firefox -> 根据 netscape navigator 进行改的 ### 2008 google 基于webkit blik gears 开发出 chrome --- v8引擎 ->Js引擎 1.直接翻译机器码 2.独立于浏览器运行 progressive web app 渐进式 web app ### 2009 甲骨文orcal 收购了SUN 公司 JS的所有权给甲骨文 ## ECMA European Computer Manufactures Association 欧洲计算机制造联合会 地点瑞士 日内瓦 评估、开发、认可电信、计算机标准 ECMA - 262 简本语言的规范 ECMAScript ES5 ES6 规范化脚本语言 ## 编程语言 ## 高级语言 编译型 解释型 编译过程 源码 -> 编译器 -> 机器语言 -> 可执行的文件 源码 -> 解释器 -> 解释一行就执行一行 解释型语言 -> 不需要根据不同的系统进行移植 .JAVA -> javac -> .class ->jvm解释执行 脚本语言 -> 脚本引擎 -> 解释器 脚本语言 前端 后端 js客户端脚本 php服务器端脚本 ECMAscript DOM document object model w3c BOM browser object model 没有规范 javaScript 是单线程的 但是它会模拟 乱转时间片(短时间之内轮流执行多个任务的片段) 1. 任务1 任务2 2. 切分任务1 任务2 3. 随机排列这些任务片段 4. 按照队列顺序将任务片段送进js进程 5. js线程执行一个又一个 任务片段 ## 四要素 变量 数据结构 函数 运算能力 变量 -> 即为容量 用于存储数据的容器 便于后续使用数据 var a ; 变量声明 a = 3; 变量赋值 var a = 3; 变量声明 并 变量赋值 var a = 1 , b = 3; 声明多个变量 var a = 1 , b; ## 命名规范 不能以数字开头 能字母_$开头 组成 可以由 字母_$数字 关键字 保留字 语义化 结构化 js_header J_header j_header js—header J-header j-header 小驼峰 myEnglishName MyEnglishName ## JS值 // 原始值 --->基本类型 number string boolean undefined null var a = 1; var str = '我爱编程' 动态语言 -> 脚本语言 -> 解释性语言 -> 弱类型语言 静态语言 -> 编译型语言 -> 强类型语言 // 引用值 object array function date RegExp # day 02 基本语法、规范 、 错误、 运算符 、判断分支 注释 符号两边都必须由空格 c = a + b ; // 语法 通用 //语法错误 SynTaxError 提示即为语法错误 语法错误直接导致语法块不执行 // 通用 导致后面程序没法执行下去 不同的代码块之间不相互影响。 例如 两个出现语法 或者通用错误 #day 03 循环 、 引用值、显式和隐式类型转换 引用值 array object function // array[i] 索引 #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)