前言

  最初浏览过《JavaScript秘密花园》,前一段时间读过一点点《JavaScript语言精粹》和一点点《JavaScript高级程序设计》(一点点是指都只是读了个开头,有个大概其的印象)。最近在Codecademy上,学习JavaScript相关的课程。不得不说,和当初的安利一样,该网站的易读性、可操作性和交互性非常地强——很适合作为一个新人入门的学习。(张嘴吃下我这安利~)准备在一个月内刷完Codecademy上FE相关的课程(JS目前进度80+%),共勉。(flag已立。)

  在此,记录下学习过程中的点滴,以供今后的自己回顾。(从课程的后百分之二十开始,之前的会慢慢补充。)

  P.S.: 笔者自己是一个前端萌新。所以,此文难免疏漏百出,请各位看官不吝赐教。


笔记

Unit 1 - Introduction

  'prompt': ask user for an input.

  'comfirm':

  'console.log()':

  '===' VS '==' in JS:

  variables in JS: allow user to save and call values.

  string:

    substring()

    .length

  'Math.random()': randomly generates a number between 0 and 1

Unit 2 - Functions

  functions in JS: A reusable piece of code that can be called on throughout an application.

  parameter:

    input into a function; a placeholder word that is passed a specific value when the function is called;

    there is no limit to the number of parameters for a function

  'return': allows for the output of a function to be used elsewhere

  benefits of functions:

    Being less redundant;

    Easier debugging due to better organization;

    Making your code more reusable through separation of concerns;

    ...

    

Unit 3 - 'for' loop in JS

  'for' loop in JS: loops through a block of code a determinable number of times

  element in JS: an entry in an array

  array: a variable that can store a list of different data types

Unit 4 - 'while' loop in JS

  注意不要运行一个无限while循环(infinite while loop)(写循环时要保证循环最终能停下来),否则程序会崩溃(一般地,如果运行环境是浏览器,那么浏览器会崩溃)。

Unit 5 - Control Flow

  'isNaN()': checks if the value is not a number and returns a boolean

  

 isNaN("23");    //false
isNaN("imo"); //true

  logical operator: &&, ||, !

Unit 6 - Data Stuctures

  array:

    异构的(heterogeneous): 数组内部的数据类型(data type)可以是不同的

    锯齿状的(jagged): 多维数组

    均匀的(homogenous)

    .length:

  object:

    key, value

    how create?:  

      1. Object Literal Notation

      2.

    how add key?:

      

 myObj.name = "imo";
myObj["name"] = "imo";

Unit 7 - Object I

Unit 8 - Object II

  从Object说起。

  (编辑补充中……)

面向对象编程

  面向对象编程(OOP,object-oriented programming)不得不提到类(class)

  当你编写一个自定义构造函数(custom constructor)时,你其实就是在定义一个新的类。类可以理解为一种类型(type),或者一种类型(category)的对象(objects)。类有某些属性(property)和方法(method)。

  JS通过构造器(constructor)自动定义了类的原型(prototype)。原型记录了一个类有或没有什么(属性)、能或不能做什么(方法)。一个对象(object)是一个类(class)的一个特别的实例(instance)。

  

  

面向小白的JS笔记 - #Codecademy#学习笔记的更多相关文章

  1. 【09-23】js原型继承学习笔记

    js原型继承学习笔记 function funcA(){ this.a="prototype a"; } var b=new funcA(); b.a="object a ...

  2. Underscore.js 源码学习笔记(下)

    上接 Underscore.js 源码学习笔记(上) === 756 行开始 函数部分. var executeBound = function(sourceFunc, boundFunc, cont ...

  3. Underscore.js 源码学习笔记(上)

    版本 Underscore.js 1.9.1 一共 1693 行.注释我就删了,太长了… 整体是一个 (function() {...}());  这样的东西,我们应该知道这是一个 IIFE(立即执行 ...

  4. 浏览器中js执行机制学习笔记

    浏览器中js执行机制学习笔记 RiverSouthMan关注 0.0772019.05.15 20:56:37字数 872阅读 291 同步任务 当一个脚本第一次执行的时候,js引擎会解析这段代码,并 ...

  5. 纯JS实现KeyboardNav(学习笔记)一

    纯JS实现KeyboardNav(学习笔记)一 这篇博客只是自己的学习笔记,供日后复习所用,没有经过精心排版,也没有按逻辑编写 GitHub项目源码 预览地址 最终效果 KeyboardNav使用指南 ...

  6. 纯JS实现KeyboardNav(学习笔记)二

    纯JS实现KeyboardNav(学习笔记)二 这篇博客只是自己的学习笔记,供日后复习所用,没有经过精心排版,也没有按逻辑编写 这篇主要是添加css,优化js编写逻辑和代码排版 GitHub项目源码 ...

  7. [360前端星计划]BlackJack(21点)(纯JS,附总部学习笔记)

    [360前端星计划]总部学习笔记(6/6) [360前端星计划]详情跳转 游戏界面预览 目录 一.游戏介绍 1.起源 2.规则 3.技巧 二.游戏设计 1.整体UI构思 2.素材采集 3.游戏总规划 ...

  8. [读书笔记]C#学习笔记一: .Net Framwork

    前言: 一次偶然的机会  在园子里看到@Learning hard 出版的一本书: <<C#学习笔记>>, 然后买来 一直到现在读完, 感觉很不错, 适合入门, 书中内容是从C ...

  9. [读书笔记]C#学习笔记三: C#类型详解..

    前言 这次分享的主要内容有五个, 分别是值类型和引用类型, 装箱与拆箱,常量与变量,运算符重载,static字段和static构造函数. 后期的分享会针对于C#2.0 3.0 4.0 等新特性进行. ...

随机推荐

  1. maven私服搭建(centOS6.5)

    maven的好处和私服的应用本文不赘述,私服搭建如下: MAVEN 私服搭建(centOS 6.5 环境) 1.  准备环境,搭建centOS6.5系统环境,略 2.  准备对应的软件包如下: A. ...

  2. 16083001(古墓丽影GPA)

    [目标] 编译UNREALPORJECT2工程 [思路] 1 2 3 一件衣服23932个面 vs: // // Generated by Microsoft (R) HLSL Shader Comp ...

  3. 在Heroku上,安装Wordpress

    其實在 Heroku 上安裝 Wordpress 不會很難,不過閱讀之前,你可能先要知道 Heroku 與 git 的基本操作,建議可以先參考以下網站用 Heroku 架設 Wordpress 網站 ...

  4. docker定制化镜像的构建及基于该定制的镜像创建容器

    1.在项目里创建Dockerfile(注意大小写)文件,执行构建命令:docker build -t tiny-node-1 /root/tiny-node-docker    其中tiny-node ...

  5. Can't update: no tracked branch

    git更新错误:Can't update: no tracked branch No tracked branch configured for branch master. To make your ...

  6. useful tips for win7--close the noise volume(关掉win7开机、系统操作的声音)

    how to close the voice of your PC? i)   open your computer and then press F2 to enter the BIOS set-u ...

  7. JSP内置对象---request 对象

    request.jsp: <%@ page language="java" import="java.util.*" contentType=" ...

  8. kudu playground

    建表: CREATE TABLE my_first_table ( id BIGINT, name STRING ) TBLPROPERTIES( 'storage_handler' = 'com.c ...

  9. SQL数据库,使用事务执行增删改操作,给自己一个后悔的机会

    内容并不复杂,使用起来也比较简单. 主要使用以下3条SQL语句: 开始事物:BEGIN TRAN(全拼 TRANSACTION 亦可)提交事物:COMMIT TRAN回滚事务:ROLLBACK TRA ...

  10. Promise学习

    转自:http://www.cnblogs.com/lvdabao/p/es6-promise-1.html 去年6月份, ES2015正式发布(也就是ES6,ES6是它的乳名),其中Promise被 ...