学习JS的第一天--初识JS
1、初识JS
a.我的第一个JS程序;
document.write(“Hello JS”);//这段代码是输出到body中就是直接打开就可以看到;
console.log("Hello JS"); //这段代码是可以通过检查,可以在后台显示看到;
b.JS添加
JS在一个页面内可以在任何地方添加<script type="text/javascript">document</script>顺序自上而下执行;
c.JS引入
<script type="text/javascript" src="Day1_0921第一个js代码.js">
</script>
d.注释
/*一大段文本*/ /**/在俩个*号中间可以注释一大段文本
//我是一行文本 //在双斜杠后可以单独注释一行文本 快捷键 ctrl+/
2.常量与变量
a.量:用来在计算中存储和表示数据
常量:在程序运行中是不可以改变的
console.log(5);
5=666; //错误案例
console.log(5);
//----------------------------------------------------------------分割-----------------------------------------------------------------------
//变量:在程序运行中,其值可以改变
定义:var 标识符;创建一个空间
关键字:拥有某种含义的单词
var关键字:告知编译器后面的标识符为一个变量
var a;
a=123;
console.log("a");
a=456;
console.log("a"); //最后输出结果123 <br> 456
b.左值和右值
左值:空间
右值:数值,值
c.初始化与赋值
初始化:在定义这一行变量的时候同时赋值;
赋值:除了初始化以外的赋值;
var a;
a=123;
console.log("a");
3.标识符命名规则
a.//只能由数字、字母、下划线和$构成,首字母不能为数字,也不能和已有关键字和库函数重复;
b.不成文规定
(1)变量名必须用英文,必须用拼音;
(2)起名见名知意;
(3)变量名太长的时候,骆驼命名法:除了第一个单词之外的单词,首字母大写
4注意:JS ES3的语法天生残疾;
a.不应该使用未被定义的变量,变量应该先定义后使用
a=123;
console.log(a);
var a;
b.变量不应该重复定义(错误示例)
var a =123;
console.log(a);
var a=456;
console.log(a);
5.数据类型:检验算法合法性的必要条件,避免一座山+一杯水的问题:
var a =123;
var b =xxx;
a+b;
a.基本类型
(1):undefined:未被赋值的变量的默认
(2):null:空值 类似于undefined,可以理解为等价console.log(null==undefined)
(3):number:数字
整型 没有小数点
浮点型 带有小数点的数字
(4):string:字符串,被单引号或者双引号括起来的字符序列
console.log(“123”+1);
(5):布尔类型 逻辑值 ture false
var flag=true;
console.log(flog);
*引用:除了基本类型都是引用类型(object)
typeof:判断数据是什么类型
console.log(typeof(a));
var a=123;
console.log(typeof a);
int a;
6.运算符(优先级、结合方向、操作目数)
a.算数/加法/数学运算符+ - * / %(求余、取模)
console.log(2+3);
console.log(2-3);
console.log(2*3);
console.log(2/3);
求余运算符:最后的结果为余数:比如下边的例子,结果为2
console.log(2%3);
b.赋值运算符 =
var a=b=2
var a=b+2
*复合的赋值运算符+=、-=、*=、/=优先级比较低
例如:
a=5;
var a%=2-3;输出结果为1
c.自增减运算++、--
++a; 先加后计算 var a=a+1 var a=5; ++a; colsole.log(a); a为6
a++ 先算后加 (过了该条语句再算) var a=5; a++; var a; colsole.log(a); a为5 k 6
var k=0;
k=k++ + ++k +k + k++; (千万不要写出这样的代码 要有可读性)
d.关系运算符(输出结果会是一个boolean值:true/false)
>、>=...!=、===(严格等)
e.逻辑运算符&& 、|| 、!(与、或、非) 通过逻辑量和关系表达式连接起来其结果也是boolean类型
&&(与):完成一件事,有N个步骤,每个步骤都得完成,此件事才能完成,所有步骤之间的关系就是与;
||(或):完成一件事,有N个方法,任何一个方法都能解决该问题,则个个方法间的关系为或;
!(非):某个条件的对立面,注意:!男。。。不光是女的 往国外 往高技术想
ex:var i = -4;
var j;
//短路与,首次遇到失败的条件,后面与运算终止
j=-5>i&&++i<3
console.log("i");
----------------------------------------------------------------
var i = -4;
var j;
//短路或,首次遇到失败的条件,后面与运算终止
j=-5>i||++i<3
console.log("i");
学习JS的第一天--初识JS的更多相关文章
- JavaScript学习笔记(一)——初识js
这个周,开始了JavaScript的学习路程.虽然从高中开始就接触了网页设计的知识,大学里的学习也算回顾了Html和Css的知识,实习期间在牛盾科技也是做的网站建设,不过通过前段时间找工作才发现自己了 ...
- js学习之路1: 初识js函数
1. 简单的函数: <html> <head> <script type="text/javascript"> function myfunct ...
- Python学习之旅--第一周--初识Python
一:Python是一种什么样的语言? 1.语言的分类: a.编译型语言和解释性语言: 通常所说的计算机语言分为编译型和解释型语言.编译型语言典型的如C,C++,通常在程序执行之前必须经由编译器编译成机 ...
- Vue.js 学习笔记 第1章 初识Vue.js
本篇目录: 1.1 Vue.js 是什么 1.2 如何使用Vue.js 本章主要介绍与Vue.js有关的一些概念与技术,并帮助你了解它们背后相关的工作原理. 通过对本章的学习,即使从未接触过Vue.j ...
- 一个Js开发者学习Python的第一天
原文地址:小寒的博客 https://www.dodoblog.cn/blogs/5bf6b8fa0c09883d0f8aad13 作为一个有着足足两年半学习经验和一年半开发经验的js开发者,看着js ...
- node.js系列笔记之node.js初识《一》
node.js系列笔记之node.js初识<一> 一:环境说明 1.1 Linux系统CentOS 5.8 1.2 nodejs v0.10.15 1.3 nodejs源码下载地址 htt ...
- Node.js入门教程:Node.js如何安装配置并部署第一个网站
前言:作为一个资深的前端开发人员,不懂的Node.js 那你绝对是不能跟别人说你是资深的前端程序猿滴! 今天洋哥就来和大家一起学习被大牛称之为前端必学的技能之一Node! 那么Node到底是什么呢? ...
- 学习RaphaelJS矢量图形包--Learning Raphael JS Vector Graphics中文翻译(一)
(原文地址:http://www.cnblogs.com/idealer3d/p/LearningRaphaelJSVectorGraphics.html) 前面3篇博文里面,我们讲解了一本叫做< ...
- 初识JS正则表达式
初识JS正则表达式 看到的使用的正则表达式练习:http://www.cnblogs.com/wenanry/archive/2010/09/06/1819552.html PS:本文参考李炎恢JS笔 ...
随机推荐
- verifycode验证码模版
# -*- coding:utf-8 -*- from django.shortcuts import HttpResponse def verifycode(request): # 引入绘图模块 f ...
- vue1.0,2.0区别 生命周期
1.生命周期 删除 beforeCompile compiled ready,新增beforeMounted mounted beforeUpdate updated 2.for循环里取消了$ind ...
- SpringBoot 添加本地 jar 文件
前言 有时候我们在项目中,会用到一些本地 jar 包文件,比如隔壁公司自己打包的: 此时无法从maven远程仓库拉取: 那么我们可以考虑把 jar 文件安装到本地 maven 库中,然后再添加依赖. ...
- 解决springboot 配置文件未映射静态资源文件 导致shiro拦截静态资源的问题
---------------------------------------------------------------------------------------------------- ...
- FastAPI(45)- JSONResponse
背景 创建 FastAPI 路径操作函数时,通常可以从中返回任何数据:字典.列表.Pydantic 模型.数据库模型等 默认情况下,FastAPI 会使用 jsonable_encoder 自动将该返 ...
- 【LeetCode】300.最长递增子序列——暴力递归(O(n^3)),动态规划(O(n^2)),动态规划+二分法(O(nlogn))
算法新手,刷力扣遇到这题,搞了半天终于搞懂了,来这记录一下,欢迎大家交流指点. 题目描述: 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度. 子序列是由数组派生而来的序列,删除(或不删 ...
- python class自身返回值研究
在python中,如果你写了这样一串代码: import datetime a = datetime.date(2021, 9, 1) b = "2021-09-01" print ...
- ElasticSearch7.X.X-初见-模仿京东搜索的实战
目录 简介 聊聊Doug Cutting ES&Solr&Lucene ES的安装 安装可视化界面ES head插件 了解ELK 安装Kibana ES核心概念 文档 类型 索引 倒排 ...
- html行内元素
定义 行内元素只占据它对应标签的边框所包含的空间,没有换行效果 div{ /* 定义行内元素*/ display:inline } 特点 多个元素可以横排显示 不支持宽高和上下margin 支持pad ...
- uniapp小程序迁移到TS
uniapp小程序迁移到TS 我一直在做的小程序就是 山科小站 也已经做了两年了,目前是用uniapp构建的,在这期间也重构好几次了,这次在鹅厂实习感觉受益良多,这又得来一次很大的重构,虽然小程序功能 ...