N年前的JAVASCRIPT笔记(2)
作者:kevin 来源:Idea Work Loft 发布时间:2009-01-07 12:40:00
六、javascript变量
用var加上为变量指定的名称来声明变量,变量类型可以通过给变量赋值来确定。由于javascript采用的是弱类型的样式,对数据类型要求不太严格,在程序执行的过程中,会根据需要自动转换。
字符串变量,可以通过“变量名.length”来获得该变量中字符串的长度,如
var name;
name=”javascript”;
那么name.length的值就是10。
若在一行中创建多个变量时,记住用逗号来隔开变量名。各语句用分号隔开。(使用分号是个好习惯, 大家在学习的时候尽量养成加分号的习惯)
类型转换:javascript允许在程序中改变变量的类型,最常见的两个类型转换符Number和String。
Number(x)是字符型值——〉数字值型。String与之相反。相对于javascript的自动类型转换,可以将这种转换成为强制类型转换。(强制类型转换需要在javascript1.2及以上版本才可以使用)
变量的命名:
1.必须以字母或下划线开头,中间可以有字母数字和或下划线。不能使用空格、+、-等其他符号。
作为连字符外,变量名称不能有空格、(+)、(-)、(,)或其它符号。
2.不能使用JavaScript中的关键字作为变量。
(javascript变量名是区分大小写的,name和Name是不一样的。)
对于变量还有一个重要性──那就是变量的作用域。在JavaScript中同样有全局变量和局部变量。全局变量是定义在所有函数体之外,其作用范围是整个函数;而局部变量是定义在函数体之内,只对其该函数是可见的,而对其它函数则是不可见的。
如果局部变量和全局变量重名,则局部变量优先。js没有块级作用域。函数中声明的所有的变量,作用域是相同的。
变量的类型规则
javascript是无类型的,他的变量可以放任何数据类型的值。
变量的声明
在javascript程序中,在使用变量之前,必须先声明它。变量是使用关键字var声明的。而实际上,不一定要先声明变量,在某些情况下,变量声明是可选的。
var i;
var sum;
也可以使用一个var关键字声明多个变量;
var i,sum;
而且还可以将变量声明和变量初始化绑定在一起:
var message = ‘hello’;
var i = 0,j=0,k=0;
由var声明的变量是永久的,因为各浏览器对是否可以删除全局性的变量的态度是不同的,(都可以删除局部变量)为了安全,最好假设全局变量不可删除。
可以使用var多次声明同一个变量,当你给一个没有声明的变量赋值时,js会自动用哪个变量为你创建一个全局变量。如果你想在函数内部创建一个局部变量。那就必须用var在函数内部声明。
七、javascript表达式和运算符
表达式:在定义完变量后,就可以对它们进行赋值、改变、计算等一系列操作,这一过程通常由表达式来完成,可以说它是变量、常量、布尔及运算符的集合,因此表达式可以分为算术表述式、字串表达式、赋值表达式以及布尔表达式等。
1.算术运算符:+(加) 、-(减)、 *(乘)、 /(除)、 %(取模) -(取反)、++(递加1)、–(递减1)。
例:11%2=1 ; 如果x=2 ++x+4=7 x+++4=6(++x是先执行加1,x++是执行完语句之后x在自加1)
例子:
<script>
var i=0, j=0;
alert(i++ + ” ” + ++j + ” ” + i);
// 输出 “0 1 1”,可见i++是先输出了i,然后进行运算,而++j是先对j进行了自加运算,然后输出j的值
</script>
2.比较运算符:<(小于)、>(大于)、<=(小于等于)、>=(大于等于)、==(等于)、!=(不等于)
(基本操作过程是,首先对它的操作数进行比较,然后再返回一个true或False值。)
3.逻辑运算符:!(取反)、&=(与之后赋值)、 &(逻辑与)、 |=(或之后赋值)、 |(逻辑或)、^=(异或之后赋值)、 ^(逻辑异或)、 ?:(三目操作符)、||(或)、&& (与)==(等于)、|=(不等于)。
4.字符串运算符:只有+ (”my“+”javascript“结果等于”my javascript“)
5.赋值运算符:即=,将右边的值赋给左边的变量。
6.条件运算符:(?:)例:status=(age>=18)?”adult”:”child”;如果大于18,则表达式的值为adult。
7.typeof()运算符:用来返回变量或数据的类型。
八、IF语句。
if (条件)
语句段1
else
语句段2
功能:若表达式为true,则执行语句段1;否则执行语句段2。
说明:
if -else 语句是JavaScript中最基本的控制语句,通过它可以改变语句的执行顺序。
表达式中必须使用关系语句,来实现判断,它是作为一个布尔值来估算的。
它将零和非零的数分别转化成false和true。
若if后的语句有多行,则必须使用花括号将其括起来。


猜你喜欢
- MASK图像掩膜处理在图像操作中有时候会用到掩膜处理,如果使用遍历法掩膜图像ROI区域对于python来讲是很慢的,所以我们要找到一种比较好
- 本文实例为大家分享了js+css实现换肤效果的具体代码,供大家参考,具体内容如下效果图如下:需求:点击对应小圆点,下面内容颜色跟着改变主要思
- 一、下载xlsx插件npm i xlsx二、通过element-ui组件的upload组件上传文件<el-upload
- 老生常谈的问题,大部分人也不一定可以系统的理解。Javascript语言对继承实现的并不好,需要工程师自己去实现一套完整的继承机制。下面我们
- 栗子:计算斐波那契数列(任一个数都是前两个数之和的数字序列)Python2.7实现代码如下:<strong><span s
- 1. 创建主窗口上文中我们建立的图形界面程序 GUIdemo2.py,通过导入图形界面 uiDemo1.py,已经实现了主窗口的创建。1.1
- 本文实例讲述了Python使用sax模块解析XML文件。分享给大家供大家参考,具体如下:XML样例:<?xml version=&qu
- mysql 8.0.20 安装配置方法图文教程整理下,供大家参考。一、准备工作1、检查是否已经安装mysql当前计算机没有安装mysql。2
- 相信用过thinkphp的用户都知道thinkphp的模型可以完成很多辅助功能,比如自动验证、自动完成等,今天在开发中遇到自动完成中需要获取
- 【先锋缓存类】Ver2004作者:孙立宇、apollosun、ezhonghua官方网站:http://www.lkstar.com 技术支
- 1.垂直影像拼接 vconcat# -*- coding: utf-8 -*-import cv2image = cv2.imread(&q
- 多表查询1. 增删改一对多:先一后多,外键可以为对象或依赖表的主键(publish and book)publish = Publish.o
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN&
- matplotlib在widgets模块提供Cursor类用于支持十字光标的生成。另外官方还提供了自定义十字光标的实例。widgets模块C
- 本文实例为大家分享了pygame实现弹球游戏的具体代码,供大家参考,具体内容如下pygame弹球游戏写的很简陋pip install pyg
- 使用fastapi框架开发web项目1、为什么要用fastapi?一直以来博主都是一直使用Django进行开发的,最近公司开始使用fasta
- 这篇文章主要介绍了pyftplib中文乱码问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋
- 前言大家都知道Python 是一门强类型、动态类型检查的语言。所谓动态类型,是指在定义变量时,我们无需指定变量的类型,Python 解释器会
- Python中的单元测试我们先来回顾一下Python中的单元测试方法。下面是一个 Python的单元测试简单的例子:假如我们开发
- function map(a,f){f(a);} function getRand(a,b) {