Js和Php的区别是什么?

2024年11月17日 05:47
有5个网友回答
网友(1):

1、两者的核心功能不一样:

php中的核心功能是用函数方式实现,例如取得一个字符串的长度:$length = strlen(str);

而js是用对象的方法实现,例如取得一个字符串的长度:var length = str.length。

2、变量传值方式不一样:

js中,变量的传值传递和传址传递是根据传递的对象的类型决定的,不能自己随心控制;

而php中所有类型都可以自由控制其传值是传值还是传址,在变量前加上&就可以变成传址方式,不加&就是传值方式。

3、两者基本特点不一样:

php是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。

js是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。

参考资料来源:百度百科-javascript

参考资料来源:百度百科-PHP

网友(2):

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随无静态变量但可以定义函数的属性来冒充静态变量

网友(3):

首先要了解,当你要访问一个网站的时候,你通过浏览器向某个网址发出请求,然后那个网址对应的服务器接收到请求并执行相应处理,然后返回一个响应给你的浏览器。如果这个响应内容是一份HTML文档,那么浏览器就会解析渲染这份HTML,展示出来给你看,就是你看到的网页。
那么服务器怎么组织这份HTML响应呢?就可以通过各种程序来计算、“拼凑”,比如Java、.NET、php等等。所以php是运行在服务器上的脚本。
虽然同样是脚本,过去javascript流行起来的时候,最大的用法却是让它作为HTML文档中的一部分,由服务器返回给客户端浏览器,然后javascript脚本在浏览器中被浏览器执行,进行各种处理(例如校验表单输入、动态改变页面DOM元素或样式、发出AJAX请求等等)。所以javascript大部分时候是运行在浏览器上的。这种情况下,对于服务器来说,它不“认识”这是javascript脚本,只当作普通文本字符串内容(是响应HTML文档内容的一部分)而已。
上面之所以没有说javascript是绝对运行在浏览器端的原因,是因为目前逐渐流行的node.js,是一项将javascript脚本运行在服务器端,完成和传统Java、php等服务器端web server相同功能的技术。其实,javascript脚本刚被发明出来的时候,是被设计用来做服务器端脚本的。估计连创始者也没想到,javascript会“绕”了这么一个大圈,但是处处大放光彩。

网友(4):

在我看来没区别啊,一样可以处理数据,先创建一个js文件写入js代码,用link导入html,然后上传服务器,别人也攻击不了啊,后台都省了,特殊时候直接去数据库里改数据

网友(5):

好比电冰箱和电视机的区别。