php与js的区别是什么


Posted in Javascript onAugust 05, 2013

1,类型转换的不同

在javascript中

空对象和空数组转换为boolean值为true;

但在php中

空对象空数组转换为boolean值为false;

(仅在php4中空对象的boolean值为false)

包括非0的负数值,都是转换为true;

2,实形参的不同

在js中形参和实参的个数对比起来都没有限制,形参个数可以大于实参,也可以少于实参

而在php中,实参数大于形参不报错,但当实参个数少于形参个数时(并且未指定的形参未定义时就会报错)

function mao(val1,val2,val3){ 
} 
mao(aa,bb);

此时由于val3未指定实参,会报错
但当val3初始化一个值时,不报错

function mao(val1,val2,val3="123"){ 
} 
mao(aa,bb);

js中可以写一个三元表达式来给未赋值的形参给定一个初始值,不可以和php一样在形参列表里面赋值,
本质原因由于php不存在原型连,执行过程中没有变量对象。

3.数据类型的不同

js中有undefined类型,php中无此类型,

因此当一个变量未赋予任何值时,js中此类型为undefined(使用未申明的变量会报错),而在php中则为Null类型;

并且js中只有number类型,而在php中无此类型,取代的为int float类型;

4.字符串的连接

js中使用加号 + +=

php中使用点号 ..=

5.控制语句的区别

else if与elseif在php中都支持,js只支持前者

6.大小写问题

js严格区分大小写

php中自定义函数名不区分大小写。命名函数时不可使用已声明的函数,或PHP内建的函数名称。

7.变量的作用范围

php在函数范围之外所声明的变量就是全局变量。由于函数可以视为单独的
程序片段,所以局部变量会复盖全局变量的能见度,因此在函数中并无
法直接调用使用全局变量。函数中若要使用全局变量时,必须要利用global关键字定义目标变量,以
告诉函数主体此变量为全局。

js由于原型连的关系,可直接调用

8.静态变量

PHP支持声明函数变量为静态的(static)

js随无静态变量但可以定义函数的属性来冒充静态变量

Javascript 相关文章推荐
JavaScript 学习笔记(六)
Dec 31 Javascript
添加JavaScript重载函数的辅助方法2
Jul 04 Javascript
JS对select控件option选项的增删改查示例代码
Oct 21 Javascript
JavaScript数组深拷贝和浅拷贝的两种方法
Apr 16 Javascript
使用正则表达式的格式化与高亮显示json字符串
Dec 03 Javascript
JS实现黑客帝国文字下落效果
Sep 01 Javascript
基于Bootstrap实现Material Design风格表单插件 附源码下载
Apr 18 Javascript
基于JQuery实现分隔条的功能
Jun 17 Javascript
微信小程序 数据封装,参数传值等经验分享
Jan 09 Javascript
vue  directive定义全局和局部指令及指令简写
Nov 20 Javascript
JavaScript实现省市区三级联动
Feb 13 Javascript
Vue Elenent实现表格相同数据列合并
Nov 30 Vue.js
IE下写xml文件的两种方式(fso/saveAs)
Aug 05 #Javascript
js获取input标签的输入值实现代码
Aug 05 #Javascript
js实现页面转发功能示例代码
Aug 05 #Javascript
Jquery:ajax实现翻页无刷新功能代码
Aug 05 #Javascript
jquery js 重置表单 reset()具体实现代码
Aug 05 #Javascript
JS幻灯片可循环播放可平滑旋转带滚动导航(自写)
Aug 05 #Javascript
artDialog双击会关闭对话框的修改过程分享
Aug 05 #Javascript
You might like
Apache, PHP在Windows 9x/NT下的安装与配置 (一)
2006/10/09 PHP
PHP 中TP5 Request 请求对象的实例详解
2017/07/31 PHP
php实现生成PDF文件的方法示例【基于FPDF类库】
2018/07/21 PHP
用javascript将数据库中的TEXT类型数据动态赋值到TEXTAREA中
2007/04/20 Javascript
jquery中动态效果小结
2010/12/16 Javascript
JS限制上传图片大小不使用控件在本地实现
2012/12/19 Javascript
JavaScript实现点击按钮后变灰避免多次重复提交
2013/07/15 Javascript
jquery事件与函数的使用介绍
2013/09/29 Javascript
Javascript window对象详解
2014/11/12 Javascript
js实现文字滚动效果
2016/03/03 Javascript
基于jquery实现轮播焦点图插件
2016/03/31 Javascript
微信开发 使用picker封装省市区三级联动模板
2016/10/28 Javascript
React.js中常用的ES6写法总结(推荐)
2017/05/09 Javascript
详解如何将angular-ui的图片轮播组件封装成一个指令
2017/05/09 Javascript
纯js实现动态时间显示
2020/09/07 Javascript
详谈js原型继承的一些问题
2017/09/06 Javascript
基于substring()和substr()的使用以及区别(实例讲解)
2017/12/28 Javascript
vue中引入第三方字体文件的方法示例
2018/12/17 Javascript
JS实现放大镜效果
2020/09/21 Javascript
[08:29]DOTA2每周TOP10 精彩击杀集锦vol.7
2014/06/25 DOTA
[01:31:22]Ti4 循环赛第四日附加赛LGD vs Mouz
2014/07/13 DOTA
Python使用Srapy框架爬虫模拟登陆并抓取知乎内容
2016/07/02 Python
Windows安装Python、pip、easy_install的方法
2017/03/05 Python
Python利用matplotlib生成图片背景及图例透明的效果
2017/04/27 Python
python中pylint使用方法(pylint代码检查)
2018/04/06 Python
Python实现压缩文件夹与解压缩zip文件的方法
2018/09/01 Python
python解析json串与正则匹配对比方法
2018/12/20 Python
CSS3制作炫酷带方向感应的鼠标滑过图片3D动画
2016/03/16 HTML / CSS
纯CSS3实现漂亮的input输入框动画样式库(Text input love)
2018/12/29 HTML / CSS
英国在线购买轮胎、预订汽车、汽车维修和装配网站:Protyre
2020/04/12 全球购物
采购员岗位职责
2013/11/15 职场文书
电钳专业个人求职信
2014/01/04 职场文书
介绍信范文大全
2015/05/07 职场文书
CocosCreator ScrollView优化系列之分帧加载
2021/04/14 Python
Python查找算法的实现 (线性、二分,分块、插值查找算法)
2022/04/24 Python
MySQL 字符集 character
2022/05/04 MySQL