本系列文章Javascript一律简称js,javascript太长了((⊙﹏⊙)b)
  • js概述

  js是面向对象和基于事件驱动的解释型语言,主要用于WEB前端,处理用户交互。几年前js只是作为一种前端语言,现在js也可以作为后端语言了(nodejs),这个话题就留在高阶篇了了。

一切都是对象(everything is object),对象就是具体的事物,事物就包含了某些属性和某些行为。比如一个叫张三的学生,他的属性就有:姓名-张三,性别-男,兴趣-撸啊撸...,行为就有:吃,喝,拉,撒,睡...

事件驱动就对事件作出某些响应。比如点击网页上的登录按钮后(事件源,事件的起源),程序就提交用户名和密码到服务器判断能否登录(监听器,负责处理事件)。

js是有js解释器来执行的,js解释器一般嵌在浏览器中,这也是为什么js可以在浏览器运行的原因。

  • js语法

命名规范:js变量和函数名称,可以用英文字母,数字,$(美元符),_(下划线)组合,但数字不能在首位(‘3abd’就不行),名称尽量做到看到名称就知道其代表的意义(由‘age'就知道是年龄),采用驼峰命名法(第一个单词首字母小写,后面其他单词首字母大写,比如"firstStudent")

js必须写在<script></script>块中,//是行注释,注释当前行;/**/是块注释,注释多行代码,注释里的内容不会被执行。

    <script>
/**
**  变量:表示一个属性的名称,比如“age”表示年龄;js中表示一个变量如下:
**/
//var是申明符,告诉解释器age代表一个变量,分号表示结束
var age; //给age赋值
age = 24; //申明并赋值
var age = 24; /**
  数据类型
**/
var age = 24; // number类型,表示数值 var name = "abc"; //String类型,表示字符串 var isGay = false; //Boolean ,布尔类型,表示真(true)或假(false) var date = new Date(); //引用类型,表示对象 var numbers = [1, 2, 3]; //引用类型,表示数组 var type = typeof false; //获取false为何种类,结果为boolean(布尔类型)     
var type1 = typeof {}; //这是什么类型?
</script>

函数:

/**
  函数:实现某个具体的功能,下面的函数实现一个加法:
**/
//一个加法函数
function sum(a,b){
return a + b;
} //调用这个函数
var c = sum(1,2);
alert( c ); //调试 //写一个阶乘的函数吧

运算符 :

  <script>
//算术运算 +(加),-(减),*(乘) ,/(除),%(模运算,就是取余数)
var a = 1 + 3 ;// 结果是4
var b = 3 - 1 ; //结果是2
var c = 3 * 2 ; //结果是6
var d = 3 / 2 ; //结果是1.5
var e = 3 % 2 ; //结果是1 //逻辑运算
//短路与(&&,对应且的意思),有一个为假结果为假,都为真结果为真,
var b1 = false && true;//结果为false
var b2 = true && true ;//结果为true
var b3 = (0>1) && (0<1);//若第一个表达式为假,则第二个表达式将不会运算 //短路或(||),有一个真结果为真,都为假结果才为假
var c1 = false || true ; //结果为true
var c2 = false || false ;//结果为false //逻辑与(&),同短路与,唯一的区别是逻辑与两边的表达式都计算完了,再与运算,而
//短路与如第一个表达式的结果为false,就会“短路”,第二个表达式就不会计算了。
//逻辑或(|) 也是这个道理
var b4 = false & true; //结果是?
var b5 = false | true; //结果是? //取反(!),取相反值
var d = !false ;//结果为true
var d1 = !2 ;// 结果是? //位运算(略)
//运算优先级(略) </script>

循环 :

       <script>
//循环,重复做某件事,这里只介绍常见的for循环
//打10次招呼,i=0是初始变量,i<10时结束循环,每循环一次i +1
for(var i = 0 ; i< 10;i++){
console.log("hi~~~");
} //跳出整个循环,break
//当i==5时跳出【整个循环】,后面将不再执行,这里会打几次招呼?
for(var i = 0 ;i<10 ;i++){
if(i == 5){
break;
}
console.log("hi~~~");
} //跳出某次循环,continue
//当i==5时跳出【这次循环】,后面将继续执行,这里会打几次招呼?
for(var i = 0 ;i<10 ;i++){
if(i == 5){
continue;
}
console.log("hi~~~");
} //写一个九九乘法表吧
</script>

【Javascrpt 速成篇】 一:js基础的更多相关文章

  1. Javascrpt 速成篇】 三:js事件处理

    ie和chrome,firefox的事件处理,除了函数名字不同,基本大同小异.这样就已chrome为主了,对ie有兴趣的自己去百度.jquery已经处理不同浏览器兼容性问题,推荐使用. 事件处理有两种 ...

  2. Javascrpt 速成篇】 二:js面向对象

    现实世界的对象由形态和行为组成,js中对应的是属性和函数. <!DOCTYPE html> <html> <head> <meta charset=" ...

  3. Python之路【第二十一篇】:JS基础

    JavaScript的基础学习(一) 一.JavaScript概述 1.1 JavaScript的历史 ● 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在 ...

  4. 前端面试题目汇总摘录(JS 基础篇)

    JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string typeof null; // o ...

  5. JS基础篇--sort()方法的用法,参数以及排序原理

    JS基础篇--sort()方法的用法,参数以及排序原理   sort() 方法用于对数组的元素进行排序,并返回数组.默认排序顺序是根据字符串Unicode码点.语法:arrayObject.sort( ...

  6. JS基础入门篇(二十七)—BOM

    虽然上次写到js基础篇(二十四),这次直接写到(二十七).是为了提醒自己中间有几篇没写.特此说明一下啊. 1.window.open() 使用a标签呢,点击一下a标签页面才会跳转,有时候我们需要做的操 ...

  7. JS基础入门篇(三十五)—面向对象(二)

    如果没有面向对象这种抽象概念的小伙伴,建议先看一下我写的JS基础入门篇(三十四)-面向对象(一)

  8. 【基础篇】js对本地文件增删改查

    [基础篇] js对本地文件增删改查--增 js对本地文件增删改查--删 js对本地文件增删改查--改 js对本地文件增删改查--查

  9. 【基础篇】js对本地文件增删改查--查

    前置条件: 1. 本地有安装node,点击传送门 项目目录: 1. msg.json内容 { "data": [ { "id": 1, "name&q ...

随机推荐

  1. NIO复习01

    NIO 概述: 1. Java NIO 由以下几个核心部分组成:Channels       Buffers           Selectors 2. 主要Channel的实现:FileChann ...

  2. html使用笔记

    1. HTML 表单内容设置最大长度:<input type="text" name="fullname"  maxlength="85&quo ...

  3. 深入理解JVM3

    VM运行时数据区域 JVM执行Java程序的过程中,会使用到各种数据区域,这些区域有各自的用途.创建和销毁时间.根据<Java虚拟机规范(第二版)>的规定,JVM包括下列几个运行时数据区域 ...

  4. 饭卡管理系统学生E-R图

    - 2 - 1.1 可行性分析 1.1.1 项目背景 近年来学生食堂饭卡的使用给高校餐饮管理带来了一次革命, 从结算方式到账户管理, 从卫生便捷到数据统计等,不仅给就餐者带来了方便,也使餐饮结算手段发 ...

  5. Spring混合配置

    Spring混合配置 一.在JavaConfig中引入其他配置 在JavaConfig中引入JavaConfig配置 使用@Import({OtherConfig1.class,OtherConfig ...

  6. Flume-NG源码阅读之SinkGroups和SinkRunner

    在AbstractConfigurationProvider类中loadSinks方法会调用loadSinkGroups方法将所有的sink和sinkgroup放到了Map<String, Si ...

  7. Linux 增加对外开放的端口

    查看端口是否对外开放 /etc/init.d/iptables status # /etc/init.d/iptables status 表格:filter Chain INPUT (policy A ...

  8. ASCII_02_扩展

    1.来自“http://www.360doc.com/content/10/1007/22/3775569_59187136.shtml” 2. 3. 4. 5.

  9. $1...$9 属性 (RegExp) (JavaScript)

    返回在模式匹配期间找到的,所存储的最近的九个部分. 只读.     RegExp.$n 参数     RegExp 始终为全局 RegExp 对象. n 1 至 9 之间的任意整数. 备注     每 ...

  10. leetcode 2SUM

         ; i < numbers.size(); ++i){             ; i < v.size(); i++){             ; j < v.size ...