搜尋
首頁web前端js教程JavaScript 基础篇(一)_基础知识

JavaScript 基础篇(一)
基础篇
Javascript:一、数据类型和值
javascript:允许使用3种基本类型数据--------数字、字符串、布尔值,此外还支持两种小数据类型null(空)和undefine(未定义).
javascript:还支持符合数据类型-对象(object),javascript中对象分两种,一种对象表示的已命名的值的无序集合,另一种表示有 编号的值的有序集合。其实有序集合就是数组(Array)。
javascript:还定义了另一种特殊对象----函数,还有一些javascript定义的一些专用对象(等同C#封装的类一样的概念,直接用就行)
复制代码 代码如下:

<script> <BR>整型直接量:3或者10000,说白了就是数字 <BR>浮点型直接量:3.14,2345.567等,就是带小数点的 <BR>字符串直接量:"3.14","demo"等,所谓字符串,就是带单引号或双引号括起来的Unicode字符序列。 <BR>把数字转换为字符串:1,var s = 100; s+="What you name";数字就会先 <BR>转换成字符串 <BR>2,var s = 100 +"";加一个空字符串 <BR>3.要让数字更显示的转换为字符串可以使用 String()函数或 <BR>者使用toString函数。 <BR>把字符串转换为数字:var product = "2" * "2";其实当一个字符串用于数字环 <BR>境 中它会自动地转换成一个数字,也可以通过减0也可达到同样的效果,或者使用 <BR>Number()函数 <BR>布尔值: <BR>在这里我想和大家分享的内容还是转换:今后用的会比较多。1、当一个布尔值用在数字环境中,true就转换为数字1,而false转换成数字0,在字符串环境中,true就转换成字符串true,而false就转换成字符串false <BR>函数: <BR>函数是一个可执行的JavaScript代码段。这里说一下:函数作为数据类型,也可以像其他类型一样赋给对象的属性,当赋值成功后,属性常常当做是哪个方法的引用。后面常用。 <BR>函数直接量:var square = function(x){return x*x};//后面常用到,要能理解或记住 <BR></script>

Javascript:二、对象
1、对象
复制代码 代码如下:

<script> <BR>var o = new Object();//大家注意,javascript大小写敏感! <BR>var now = new Date() <BR>var regex = new RegExp("^\+?\d{1}\d{3}$")//正则表达式 <BR>对象的直接量: <BR>var point = {x:12,y:34}; <BR>var point2 = {"super":{day:sunday,day1:monday}}//对象的属性引用另一个对象。 <BR>对象的转换: <BR>当一个非空的对象用于布尔环境时:它转换为true,当用在字符串环境中是,javascript会调用对象的toString()方法,并且使用该函数返回的值,当用于数字环境时:javascript 会调用该对象的valueOf()方法,如果返回的是一个基本类型,这个值会被使用,大多数的时候返回的是对象自己,这种情况下javascript回调用toString()方法把对象转换成一个字符串,然后在试图转换成数字。这上面的概念,希望大家也要理解,以后会用到。 <BR></script>

2、数组
复制代码 代码如下:

<script> <BR>var array = new Array(); <BR>var arr = new Array(1.2,"Javascript",{x:12,y:23})//带参数的 <BR>数组直接量: <BR>var a = [1.2,"Javascript",{x:12,y:23}]//数组是[]号,对象是{}号,很好记! <BR></script>

3、Null(空)
javascript的关键字Null 是一个特殊的值,它表示无值,null 常被看作对象类型的一个特殊值,即代表无对象的值,当一个变量的值
为null,那么就说明它的值不是有效的(Array,Object,数字,字符串,布尔值), 细节:null 在布尔环境中它转换成false;在数字
环境中转换成0。
4、Undefined(未定义)
在使用一个并未声明的变量时,或者使用了已经声明的变量但没有赋值的变量时,又或者是使用一个并不存在的对象属性是,返回的
就是undefined值,在往后的(命名空间,模块用的还是蛮多,大家要理解),细节:underfined在布尔环境中它转换成false,在数字环境
它会转换成NaN。这一点和null有区别。封装它的对象是Error。
小结:以上内容虽然一看就懂,希望和我一样初学的朋友们,千万不要大意!
JavaScript 基础篇 (二)
基础篇
javascript:变量的声明
以下是几种声明变量的方式
复制代码 代码如下:

var value;
var value,value1,value2;//同时声明多个变量,但是这些变量的值都是undefined
var i = 0,j = 0,k=100;//变量声明,初始化一体。
//如果大家尝试读一个不存在的变量(值)会报错!但是尝试给一个未使用Var声明的变量赋值,javascript
//会隐式的声明改变量,而且声明了的变量还是全局的。细节:所以大家创建变量都尽量使用Var
//变量的作用域(这个问题也容易出,大家要搞明白)

javascript:变量的作用域
这些都是细节,和我一样初学的一定要注意避免!
复制代码 代码如下:

var golbal = "golbal"; //全局变量
var local ="local";
function area()
{
//局部变量的优先级比全局变量的高
var local = "arealocal"
//当函数体内声明的变量名和全局变量名相同时,javascript 会隐藏全局变量
var golbal ="areagolbal";
document.write("local is :"+local + "and golbal is :" + golbal +"
");
}
area();
//输出:local is :arealocaland golbal is :areagolbal

在嵌套的函数里面定义局部变量,效果会怎么样呢?看下面:
复制代码 代码如下:

var hope = "moremoney";
function createmore()
{
var hope = "have more money";//局部
function createmoreto()//嵌套函数
{
var hope = "have more money to much";//局部
document.write("Createmoreto hope is :"+hope +"
");
//输出:Createmoreto hope is :have more money to much
}
createmoreto();//调用
document.write("Createmore hope is :" +hope +"
");
//输出:Createmore hope is :have more money
}
createmore(); //调用

javascript:传值和传址
这里也是比较重要的概念!不要漏了。
复制代码 代码如下:

传值           传址
复制 实际复制的值,存在不同的、            复制的只是对数字的引用。如果通过这个
独立的拷贝。            新的引用修改了数值,这个改变对最初的
                        引用来说也是可见的。
传递 传递给函数的是值的独立拷贝             传递给函数的是对数值的引用,如果函数
对它的改变在函数外没有影响             通过传递给它的引用修改了数值,这个改
                         变也是可见的。       
比较 比较这两个对立的值,通常逐             比较的是两个引用,以判断它们引用的是否
字节的比较,以判断是否相等              是同一个数值。

javascript:基本类型和引用类型
javascript的基本规则是:基本类型通过传值来操作,引用类型通过传址来操作。(什么事值类型,或者什么事引用看我上一篇)
复制代码 代码如下:

按值传递
var value = 1;
var copyvalue = value; //将value赋给另一个变量
function addTotal(total,arg)
{
total+= arg; //total = total + arg 效果等同
}
//调用函数,传两个参数(大家可能会认为这个函数改变了全局变量的值,其实没有,函数用的也是对立拷贝)
addTotal(value,copyvalue);
if(value == 1) copyvalue = 2;
document.write("total \t" + value + "and copyvalue \t\t" + copyvalue+"
");
//最后输出:total 1and copyvalue 2

复制代码 代码如下:

按址传递
var array = new Array("Javascccp");
var objarray = array;
function modifyArray(arr)
{
arr[0] = "JAVASCRIPT";
}
//没调用函数前
document.write(array[0] +"
");
//输出Javascccp;
//调用函数后
modifyArray(array);
document.write(array[0]+"
");
//输出大写JAVASCRIPT
//通过修改objarray会是一样的效果
objarray[0] = "Frank";
document.write(array[0]+"
");
//输出Frank;

小结:上面内容希望大家都不要错过,对学习后面的知识还是很有帮助的!
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
JavaScript在行動中:現實世界中的示例和項目JavaScript在行動中:現實世界中的示例和項目Apr 19, 2025 am 12:13 AM

JavaScript在現實世界中的應用包括前端和後端開發。 1)通過構建TODO列表應用展示前端應用,涉及DOM操作和事件處理。 2)通過Node.js和Express構建RESTfulAPI展示後端應用。

JavaScript和Web:核心功能和用例JavaScript和Web:核心功能和用例Apr 18, 2025 am 12:19 AM

JavaScript在Web開發中的主要用途包括客戶端交互、表單驗證和異步通信。 1)通過DOM操作實現動態內容更新和用戶交互;2)在用戶提交數據前進行客戶端驗證,提高用戶體驗;3)通過AJAX技術實現與服務器的無刷新通信。

了解JavaScript引擎:實施詳細信息了解JavaScript引擎:實施詳細信息Apr 17, 2025 am 12:05 AM

理解JavaScript引擎內部工作原理對開發者重要,因為它能幫助編寫更高效的代碼並理解性能瓶頸和優化策略。 1)引擎的工作流程包括解析、編譯和執行三個階段;2)執行過程中,引擎會進行動態優化,如內聯緩存和隱藏類;3)最佳實踐包括避免全局變量、優化循環、使用const和let,以及避免過度使用閉包。

Python vs. JavaScript:學習曲線和易用性Python vs. JavaScript:學習曲線和易用性Apr 16, 2025 am 12:12 AM

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

Python vs. JavaScript:社區,圖書館和資源Python vs. JavaScript:社區,圖書館和資源Apr 15, 2025 am 12:16 AM

Python和JavaScript在社區、庫和資源方面的對比各有優劣。 1)Python社區友好,適合初學者,但前端開發資源不如JavaScript豐富。 2)Python在數據科學和機器學習庫方面強大,JavaScript則在前端開發庫和框架上更勝一籌。 3)兩者的學習資源都豐富,但Python適合從官方文檔開始,JavaScript則以MDNWebDocs為佳。選擇應基於項目需求和個人興趣。

從C/C到JavaScript:所有工作方式從C/C到JavaScript:所有工作方式Apr 14, 2025 am 12:05 AM

從C/C 轉向JavaScript需要適應動態類型、垃圾回收和異步編程等特點。 1)C/C 是靜態類型語言,需手動管理內存,而JavaScript是動態類型,垃圾回收自動處理。 2)C/C 需編譯成機器碼,JavaScript則為解釋型語言。 3)JavaScript引入閉包、原型鍊和Promise等概念,增強了靈活性和異步編程能力。

JavaScript引擎:比較實施JavaScript引擎:比較實施Apr 13, 2025 am 12:05 AM

不同JavaScript引擎在解析和執行JavaScript代碼時,效果會有所不同,因為每個引擎的實現原理和優化策略各有差異。 1.詞法分析:將源碼轉換為詞法單元。 2.語法分析:生成抽象語法樹。 3.優化和編譯:通過JIT編譯器生成機器碼。 4.執行:運行機器碼。 V8引擎通過即時編譯和隱藏類優化,SpiderMonkey使用類型推斷系統,導致在相同代碼上的性能表現不同。

超越瀏覽器:現實世界中的JavaScript超越瀏覽器:現實世界中的JavaScriptApr 12, 2025 am 12:06 AM

JavaScript在現實世界中的應用包括服務器端編程、移動應用開發和物聯網控制:1.通過Node.js實現服務器端編程,適用於高並發請求處理。 2.通過ReactNative進行移動應用開發,支持跨平台部署。 3.通過Johnny-Five庫用於物聯網設備控制,適用於硬件交互。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱工具

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境