草庐IT

javaScript基础简介,代码编辑器,开发者控制台

沃德麻鸭 2023-03-28 原文

一、javaScript基础简介

1.JavaScript是一种编程语言,用这种语言编写的程序叫做  脚本   可以被直接写在网页的 HTML 中,在页面加载的时候自动执行

JavaScript 不仅可以在浏览器中执行,也可以在服务端执行,甚至可以在任意搭载了 JavaScript 引擎 的设备中执行,浏览器中嵌入了 JavaScript 引擎,有时也称作“JavaScript 虚拟机”,不同的引擎有不同的“代号”:

① V8 —— Chrome、Opera 和 Edge 中的 JavaScript 引擎。

② SpiderMonkey —— Firefox 中的 JavaScript 引擎。

③  Chakra —— IE中的 JavaScript 引擎。

④ “JavaScriptCore”、“Nitro” 和 “SquirrelFish” 用于 Safari,等等。

( 如果“V8 支持某个功能”,那么我们可以认为这个功能大概能在 Chrome、Opera 和 Edge 中正常运行。)

引擎很复杂,但是基本原理很简单:

 引擎 读取(“解析”)脚本 ===》将脚本转化(“编译”)为机器语言 ===》机器代码快速地执行


2.浏览器中的 JavaScript 可以做:

① 在网页中添加新的 HTML,修改网页已有内容和网页的样式。

响应用户的行为,响应鼠标的点击,指针的移动,按键的按动。

③ 向远程服务器发送网络请求,下载和上传文件(所谓的 AJAX 和 COMET 技术)。

④ 获取或设置 cookie,向访问者提出问题或发送消息。

本地存储

3.浏览器中的 JavaScript 不可以:

① 网页中的 JavaScript 不能读、写、复制和执行硬盘上的任意文件。它没有直接访问操作系统的功能。

不同的标签页/窗口之间通常互不了解。-----同源策略

③ JavaScript 可以轻松地通过互联网与当前页面所在的服务器进行通信。但是从其他网站/域的服务器中接收数据的能力被削弱了。这也是为了用户的信息安全。

4.JavaScript 的特点:

与 HTML/CSS 完全集成。

简单的事,简单地完成。

被所有的主流浏览器支持,并且默认开启。

 JavaScript 是将这三件事结合在一起的唯一的浏览器技术。这也是为什么它是用于创建浏览器界面的使用最广泛的工具,JavaScript 还可用于创建服务器和移动端应用程序等。

现代化的工具使得编译速度非常快且透明 ,最近出现了许多新语言,这些语言在浏览器中执行之前,都会被 编译(转化)成 JavaScript

(CoffeeScript、TypeScript  、Flow 、Dart  ......  )


二、代码编辑器

代码编辑器主要分两种:IDE(集成开发环境)和轻量编辑器。

① IDE: Vscode(Visual Studio code)免费、webStorm收费  两者都可跨平台,注意Vscode要与Visual Studio区别开,两者不同,后者是收费,强大的window专用编辑器,Visual Studio Community 是他的免费版本

轻量编辑器:更适用于单个文件的编辑,但由于它有各种各样的插件,可以使它和IDE功能上大差不差,两者没有严格的界限(Sublime Text(跨平台,共享软件、Notepad++(Windows,免费)、Vim 和 Emacs 等)


三、开发者控制台

快捷键:

① 安卓:F12打开控制台 、  Shift+Enter完成控制台编辑的换行

② Mac :

谷歌浏览器 Cmd+Opt+J 打开控制台  

safari浏览器也一样使用Cmd+Opt+J,需要先开启“开发菜单”,打开“偏好设置”,选择“高级”选项。选中最下方的那个选择框:

safari浏览器页面

有关javaScript基础简介,代码编辑器,开发者控制台的更多相关文章

  1. ruby - 如何在 buildr 项目中使用 Ruby 代码? - 2

    如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby​​

  2. ruby-on-rails - Rails 源代码 : initialize hash in a weird way? - 2

    在rails源中:https://github.com/rails/rails/blob/master/activesupport/lib/active_support/lazy_load_hooks.rb可以看到以下内容@load_hooks=Hash.new{|h,k|h[k]=[]}在IRB中,它只是初始化一个空哈希。和做有什么区别@load_hooks=Hash.new 最佳答案 查看rubydocumentationforHashnew→new_hashclicktotogglesourcenew(obj)→new_has

  3. ruby - 使用 C 扩展开发 ruby​​gem 时,如何使用 Rspec 在本地进行测试? - 2

    我正在编写一个包含C扩展的gem。通常当我写一个gem时,我会遵循TDD的过程,我会写一个失败的规范,然后处理代码直到它通过,等等......在“ext/mygem/mygem.c”中我的C扩展和在gemspec的“扩展”中配置的有效extconf.rb,如何运行我的规范并仍然加载我的C扩展?当我更改C代码时,我需要采取哪些步骤来重新编译代码?这可能是个愚蠢的问题,但是从我的gem的开发源代码树中输入“bundleinstall”不会构建任何native扩展。当我手动运行rubyext/mygem/extconf.rb时,我确实得到了一个Makefile(在整个项目的根目录中),然后当

  4. Ruby Readline 在向上箭头上使控制台崩溃 - 2

    当我在Rails控制台中按向上或向左箭头时,出现此错误:irb(main):001:0>/Users/me/.rvm/gems/ruby-2.0.0-p247/gems/rb-readline-0.4.2/lib/rbreadline.rb:4269:in`blockin_rl_dispatch_subseq':invalidbytesequenceinUTF-8(ArgumentError)我使用rvm来管理我的ruby​​安装。我正在使用=>ruby-2.0.0-p247[x86_64]我使用bundle来管理我的gem,并且我有rb-readline(0.4.2)(人们推荐的最少

  5. ruby-on-rails - 带 Spring 锁的 Rails 4 控制台 - 2

    我正在使用Ruby2.1.1和Rails4.1.0.rc1。当执行railsc时,它被锁定了。使用Ctrl-C停止,我得到以下错误日志:~/.rvm/gems/ruby-2.1.1/gems/spring-1.1.2/lib/spring/client/run.rb:47:in`gets':Interruptfrom~/.rvm/gems/ruby-2.1.1/gems/spring-1.1.2/lib/spring/client/run.rb:47:in`verify_server_version'from~/.rvm/gems/ruby-2.1.1/gems/spring-1.1.

  6. ruby-on-rails - openshift 上的 rails 控制台 - 2

    我将我的Rails应用程序部署到OpenShift,它运行良好,但我无法在生产服务器上运行“Rails控制台”。它给了我这个错误。我该如何解决这个问题?我尝试更新ruby​​gems,但它也给出了权限被拒绝的错误,我也无法做到。railsc错误:Warning:You'reusingRubygems1.8.24withSpring.UpgradetoatleastRubygems2.1.0andrun`gempristine--all`forbetterstartupperformance./opt/rh/ruby193/root/usr/share/rubygems/rubygems

  7. Ruby Sinatra 配置用于生产和开发 - 2

    我已经在Sinatra上创建了应用程序,它代表了一个简单的API。我想在生产和开发上进行部署。我想在部署时选择,是开发还是生产,一些方法的逻辑应该改变,这取决于部署类型。是否有任何想法,如何完成以及解决此问题的一些示例。例子:我有代码get'/api/test'doreturn"Itisdev"end但是在部署到生产环境之后我想在运行/api/test之后看到ItisPROD如何实现? 最佳答案 根据SinatraDocumentation:EnvironmentscanbesetthroughtheRACK_ENVenvironm

  8. ruby-on-rails - 浏览 Ruby 源代码 - 2

    我的主要目标是能够完全理解我正在使用的库/gem。我尝试在Github上从头到尾阅读源代码,但这真的很难。我认为更有趣、更温和的踏脚石就是在使用时阅读每个库/gem方法的源代码。例如,我想知道RubyonRails中的redirect_to方法是如何工作的:如何查找redirect_to方法的源代码?我知道在pry中我可以执行类似show-methodmethod的操作,但我如何才能对Rails框架中的方法执行此操作?您对我如何更好地理解Gem及其API有什么建议吗?仅仅阅读源代码似乎真的很难,尤其是对于框架。谢谢! 最佳答案 Ru

  9. ruby - 是否可以覆盖 gemfile 进行本地开发? - 2

    我们的git存储库中目前有一个Gemfile。但是,有一个gem我只在我的环境中本地使用(我的团队不使用它)。为了使用它,我必须将它添加到我们的Gemfile中,但每次我checkout到我们的master/dev主分支时,由于与跟踪的gemfile冲突,我必须删除它。我想要的是类似Gemfile.local的东西,它将继承从Gemfile导入的gems,但也允许在那里导入新的gems以供使用只有我的机器。此文件将在.gitignore中被忽略。这可能吗? 最佳答案 设置BUNDLE_GEMFILE环境变量:BUNDLE_GEMFI

  10. ruby - 模块嵌套代码风格偏好 - 2

    我的假设是moduleAmoduleBendend和moduleA::Bend是一样的。我能够从thisblog找到解决方案,thisSOthread和andthisSOthread.为什么以及什么时候应该更喜欢紧凑语法A::B而不是另一个,因为它显然有一个缺点?我有一种直觉,它可能与性能有关,因为在更多命名空间中查找常量需要更多计算。但是我无法通过对普通类进行基准测试来验证这一点。 最佳答案 这两种写作方法经常被混淆。首先要说的是,据我所知,没有可衡量的性能差异。(在下面的书面示例中不断查找)最明显的区别,可能也是最著名的,是你的

随机推荐